Python编程从入门到高级v1_第1页
Python编程从入门到高级v1_第2页
Python编程从入门到高级v1_第3页
Python编程从入门到高级v1_第4页
Python编程从入门到高级v1_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

./Python编程从入门到高级TOC\o"1-3"\h\u1.Python入门简介11.1安装Python21.2Python变量41.3数字运算51.4条件语句61.5Python函数112.Python基础模块123.Python数据结构15Python入门简介当我们熟练使用shell脚本编程之后,如果涉及到一些web界面、更深入的东西,使用shell脚本处理起来就比较麻烦,我们可以使用python来更快速的解决这些系列的问题。从今天开始我们就将正式来进入python编程领域。Python〔英语发音:paɪθən,是一种面向对象、解释型计算机程序设计语言,由GuidovanRossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块〔尤其是C/C++很轻松地联结在一起。由于Python语言的简洁、易读以及可扩展性,在国外用Python做科学计算的研究机构日益增多,目前国python热潮也在兴起,越来越多的人开始使用python。Python的几大特色如下:简单易学、免费开源。高层语言、移植性强。面向对象、丰富标准库等。安装Python在CentOS安装python其实很简单哦,默认一般系统已经安装python,直接执行python命令回车就可以看到相关python版本信息。或者执行python-V也可以哦。如果系统python不存在或者想升级python至新的版本,方法如下:wget;cdPython-2.6.6;./configure--prefix=/usr/local/python2.6;make&&makeinstall最后做一个软连接即可:ln-s/usr/local/python/bin/python2.6/usr/bin/python2.6使用方法执行执行python2.6–V可以查看版本并使用哦。执行第一个python命令:在shellbash输入python回车,然后执行print"HelloWorld!",可以看到HelloWorld!提示,如下图:如果想退出python,需要执行ctrl+d即可。注意哦*我们在python命令行里面输入的东西也可以把这些容写入文件里面,通过python去执行,我们暂且把这个称之为python脚本:新建第一个python脚本,python脚本后缀一般以.py结尾,像shell以.sh结尾一样,格式如下: vihello.py#/usr/bin/envpythonprint"HelloWorld!"最后在bash界面执行,执行的命令为python:pythonhello.py,容如下:Python变量Python的变量不必显式地声明保留的存储器空间。当分配一个值给一个变量的声明将自动发生。等号<=>来赋值给变量。操作数=操作符的左边是变量,操作数=操作符的右侧的名称在变量中存储的值。例如:VAR="helloworld"变量是标识符的例子。标识符是用来标识某样东西的名字。在命名标识符的时候,你要遵循这些规则:标识符的第一个字符必须是字母表中的字母〔大写或小写或者一个下划线〔‘_’。标识符名称的其他部分可以由字母〔大写或小写、下划线〔‘_’或数字〔0-9组成。标识符名称是对大小写敏感的,例如,myname和myName不是一个标识符。注意前者中的小写n和后者中的大写N。有效:标识符名称的例子有i、__my_name、name_23和a1b2_c3。无效:标识符名称的例子有2things、thisisspacedout和my-name。定义数字变量:i=10;printi数字运算常用的数字运算符如下:+ 加 - 减 * 乘 /除< 小于> 大于 <= 小于等于>= 大于等于== 等于 != 不等于 not 布尔"非"and 布尔"与"or 布尔"或"简单操作截图如下:条件语句If条件语句:if语句用来检验一个条件,如果条件为真,我们运行一段语句,否则我们还可以执行另外一段语句。如下测试案例:注意:在条件语句中结尾需要使用冒号:进行下一格编写,同时缩进可以按tab键,也可以输入两个空格。解析来继续操作,判断输入容是否为数字或者字符串等。While条件语句:While语句,只要在一个条件为真的情况下,while语句允许你重复执行一块语句,实例如下:#!/usr/bin/envpythonb=10running=Truewhilerunning:a=int<raw_input<'EnterANumberb:'>>ifa==b:print'good,ais%sequalbis%s!'%<a,b>running=False#thiscausesthewhilelooptostopelifa<b:print'No,itisalittleb'else:print'No,itisagrantb'else:print'Thewhileloopexecend!'使用while语句,一直循环,除非达到定义的条件为止,同样换行需要注意格式的问题。for循环语句:Foriin是另外一个循环语句,它在一序列的对象上,跟shellfor循环类似:#!/usr/bin/python#Filename:for.pyforiinrange<1,10>:printielse:print'TheforloopisDone!'break语句:Break是终止语句的意思,满足条件执行退出操作,具体案例如下:#!/usr/bin/python#Filename:break.pywhileTrue:A=raw_input<'EnterAnumber:'>ifA=='23':print"Thenumberis%s!"%Abreakelse:print"Pleasecontinueenternumber."print'Done'Continue语句:continue语句简单的说就是满足条件继续进行的意思,案例如下:#!/usr/bin/python#Filename:continue.pywhileTrue:A=int<raw_input<'EnterAnumber:'>>ifA=='23':print"Thenumberis%s!"%AbreakifA>'20':continueprint"Pleasecontinueenternumber."print'Done'Python函数函数是重用的程序段。它们允许你给一块语句一个名称,然后你可以在你的程序的任何地方使用这个名称任意多次地运行这个语句块。跟shell函数类似,我们可以在函数里面定义多个段,然后在后面去引用该函数。#!/usr/bin/python#Filename:func.pydefsayHello<>:print'HelloWorld!'sayHello<>Python基础模块我们前面学习了各种语法的练习,那接下来,怎么来写程序呢?我们需要引用python自带的标准模块,模块基本上就是一个包含了所有你定义的函数和变量的文件。为了在其他程序中重用模块,模块的文件名必须以.py为扩展名。模块可以从其他程序输入,然后引用它的功能。这也是我们使用Python标准库的方法。接下来,我们正式来学习python标准模块的使用方法:引用系统os模块,在python中如果需要引用模块的话,方法为importosImportsys等等可以使用系统模块命令去执行命令,例如:#!/usr/bin/envpython#FileName:modules.pyimportosprint'\033[32m\033[0m'os.mkdir<'/tmp/20141112'>os.system<'ls/tmp/'>print'\033[32m\033[0m'print'TheScriptsExecsuccess!'最后执行效果如下:一般导入模块还可以使用fromxxximportxxx,如果你想要直接输入mkdir变量到你的程序中〔避免在每次使用它时打os.,那么你可以使用fromosimportmkdir语句。如果你想要输入所有os模块使用的名字,那么你可以使用fromosimport*语句,这对于所有模块都适用。一般说来,应该避免使用from..import而使用import语句,因为这样可以使你的程序更加易读,也可以避免名称的冲突。接下来我们来定制自己的模块:Vimymodule.py#!/usr/bin/envpythondefhello<>:print'Hi,MyNameisWuguangke!'version='0.1'引用模块方法:Videmo.py#/usr/bin/envpythonimportmodulemymodule.hello<>print'Version',mymodule.version执行结果如下:当然了我们也可以使用from方式导入python模块,方法如下:#!/usr/bin/envpython#Filename:demo2.pyfrommymoduleimporthello,versionhello<>print'Version',version执行的效果是一样的。Python数据结构数据结构基本上就是——它们是可以处理一些

数据

结构

。或者说,它们是用来存储一组相关数据的。在Python中有三种建的数据结构——列表、元组和字典。我们将会学习如何使用它们,以及它们如何使编程变得简单。Python字典查询系统#!/usr/bin/envpythonimportsysdict={ 'wugk1':'wugk1163.', 'wugk2':'wugk2163.', 'wugk3':'wugk3163.', 'wugk4':'wugk4163.'}whileTrue: print'\033[32m\033[0m' user=raw_input<'\033[32mPleaseEnterSystemuserlogin:\033[0m'> pwd=raw_input<'\033[32mPleaseEnterSystempasswordlogin:\033[0m'> ifuser=='wugk'andpwd=='123': print print'\033[31mHello%s,WelcometousetheFindSystem!\033[0m'%user whileTrue: name=raw_input<'PleaseInputyourFindName:'> ifnameindict: email=dict[name] print'\033[32mThe%sisinthesystem,andEmailis%s\033[0m'%<name,email> print else: ifname=='quit'orname=='exit': print'\033[34mExitsuccess,welcometoused!\033[0m' sys.exit<> print'\033[32mThe%sisnotinthesystemline!\033[0m'%name else: print'\033[32mTheUserorpasswdinputerror,Pleaseretry.\033[0m'Python企业脚本综合应用今天我们来研究企业运维备份脚本:#!/usr/bin/envpython#autobackupsystemfiles#bywugk2014-06-24importos,sys,timedate=time.strftime<'%Y%m%d'>source=['/boot','/etc','/var/log/']dir='/data/backup/'r_dir=dir+date+'/'f_name='system_bak.tar.gz'r_name=r_dir+f_nameprint'''\033[32m+++++++++++WelcometousepythonbackupscriptsforLinux+++++++++++++++++++++++++++++++NowTimeis%s++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\033[0m'''%datetime.sleep<2>defall_bak<>:ifos.path.exists<r_dir>==False:os.makedirs<r_dir>else:print'ThisDIR%sisexists!'%r_dirtar_cmd='tar-czvf%s%s'%<r_name,''.join<source>>ifos.system<tar_cmd>==0:print'ThisBackupSystemFiles%ssuccess!'%r_nameelse:print"ThisBackupsystemFiles%sFailed!"%r_nametry:ifsys.argv[1]=='all_bak':print'PleasewaitingexecutingCommand'all_bak<>exceptIndexError:print'\033[31m\033[0m'print"\033[31mUsage:{%sall_bak|help}\033[0m"%sys

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论