1、Python编程从入门到高级v1Python编程从入门到高级1. Python入门简介当我们熟练使用shell脚本编程之后,如果涉及到一些web界面、更深入的东西,使用shell脚本处理起来就比较麻烦,我们可以使用python来更快速的解决这些系列的问题。从今天开始我们就将正式来进入python编程领域。Python(英语发音:pan), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C+)很轻松
2、地联结在一起。由于Python语言的简洁、易读以及可扩展性,在国外用Python做科学计算的研究机构日益增多,目前国python热潮也在兴起,越来越多的人开始使用python。Python的几大特色如下:简单易学、免费开源。高层语言、移植性强。面向对象、丰富标准库等。1. 1 安装Python在CentOS安装python其实很简单哦,默认一般系统已经安装python,直接执行python命令回车就可以看到相关python版本信息。或者执行python -V也可以哦。如果系统python不存在或者想升级python至新的版本,方法如下:wget .python.org/ftp/python/2
3、.6.6/Python-2.6.6.tgz tar xzf Python-2.6.6.tgz ;cd Python-2.6.6 ; ./configure -prefix=/usr/local/python2.6;make &make install最后做一个软连接即可:ln -s /usr/local/python/bin/python2.6 /usr/bin/python2.6使用方法执行执行python2.6 V可以查看版本并使用哦。执行第一个python命令:在shell bash输入python回车,然后执行print “Hello World!”,可以看到Hello World!提
4、示,如下图:如果想退出python,需要执行ctrl+d即可。注意哦*我们在python命令行里面输入的东西也可以把这些容写入文件里面,通过python去执行,我们暂且把这个称之为python脚本:新建第一个python脚本,python脚本后缀一般以.py结尾,像shell以.sh结尾一样,格式如下: vi hello.py#/usr/bin/env pythonprint “Hello World!”最后在bash界面执行,执行的命令为python:python hello.py,容如下:1. 2 Python变量Python的变量不必显式地声明保留的存储器空间。当分配一个值给一个变量的声
5、明将自动发生。等号(=)来赋值给变量。操作数=操作符的左边是变量,操作数=操作符的右侧的名称在变量中存储的值。例如:VAR = hello world变量是标识符的例子。标识符是用来标识某样东西的名字。在命名标识符的时候,你要遵循这些规则:1) 标识符的第一个字符必须是字母表中的字母(大写或小写)或者一个下划线( _ )。2) 标识符名称的其他部分可以由字母(大写或小写)、下划线( _ )或数字(0-9)组成。3) 标识符名称是对大小写敏感的,例如,myname和myName不是一个标识符。注意前者中的小写n和后者中的大写N。4) 有效:标识符名称的例子有i、_my_name、name_23和
6、a1b2_c3。5) 无效:标识符名称的例子有2things、this is spaced out和my-name。定义数字变量:i = 10 ; print i1. 3 数字运算常用的数字运算符如下:+ 加 - 减 * 乘 / 除 大于 = 大于等于= 等于 != 不等于 not 布尔“非”and 布尔“与” or 布尔“或”简单操作截图如下:1. 4 条件语句If条件语句:if语句用来检验一个条件,如果条件为真,我们运行一段语句,否则我们还可以执行另外一段语句。如下测试案例:注意:在条件语句中结尾需要使用冒号:进行下一格编写,同时缩进可以按tab键,也可以输入两个空格。解析来继续操作,判断
7、输入容是否为数字或者字符串等。While条件语句:While语句,只要在一个条件为真的情况下,while语句允许你重复执行一块语句,实例如下:#!/usr/bin/env pythonb = 10running = Truewhile running: a = int(raw_input(Enter A Number b : ) if a = b: print good,a is %s equal b is %s ! % (a,b) running = False # this causes the while loop to stop elif a 20: continue print Pl
8、ease continue enter number.print Done1. 5 Python函数函数是重用的程序段。它们允许你给一块语句一个名称,然后你可以在你的程序的任何地方使用这个名称任意多次地运行这个语句块。跟shell函数类似,我们可以在函数里面定义多个段,然后在后面去引用该函数。#!/usr/bin/python#Filename: func.pydef sayHello(): print Hello World!sayHello()2. Python基础模块我们前面学习了各种语法的练习,那接下来,怎么来写程序呢?我们需要引用python自带的标准模块,模块基本上就是一个包含了所
9、有你定义的函数和变量的文件。为了在其他程序中重用模块,模块的文件名必须以.py为扩展名。模块可以从其他程序输入,然后引用它的功能。这也是我们使用Python标准库的方法。接下来,我们正式来学习python标准模块的使用方法:引用系统os模块,在python中如果需要引用模块的话,方法为import osImport sys等等可以使用系统模块命令去执行命令,例如:#!/usr/bin/env python#FileName:modules.pyimport osprint 03332m-0330mos.mkdir(/tmp/20141112)os.system(ls /tmp/)print 0
10、3332m-0330mprint The Scripts Exec success !最后执行效果如下:一般导入模块还可以使用from xxx import xxx,如果你想要直接输入mkdir变量到你的程序中(避免在每次使用它时打os.),那么你可以使用from os import mkdir语句。如果你想要输入所有os模块使用的名字,那么你可以使用from os import *语句,这对于所有模块都适用。一般说来,应该避免使用from.import而使用import语句,因为这样可以使你的程序更加易读,也可以避免名称的冲突。接下来我们来定制自己的模块:Vi mymodule.py#!/u
11、sr/bin/env pythondef hello(): print Hi,My Name is Wuguangke!version = 0.1引用模块方法:Vi demo.py#/usr/bin/env pythonimport modulemymodule.hello()print Version, mymodule.version执行结果如下:当然了我们也可以使用from方式导入python模块,方法如下:#!/usr/bin/env python# Filename:demo2.pyfrom mymodule import hello,versionhello()print Vers
12、ion, version执行的效果是一样的。3. Python数据结构数据结构基本上就是它们是可以处理一些数据的结构。或者说,它们是用来存储一组相关数据的。在Python中有三种建的数据结构列表、元组和字典。我们将会学习如何使用它们,以及它们如何使编程变得简单。4. Python字典查询系统#!/usr/bin/env pythonimport sysdict = wugk1 : wugk1163., wugk2 : wugk2163., wugk3 : wugk3163., wugk4 : wugk4163. while True: print 03332m-0330m user=raw_i
13、nput(03332mPlease Enter System user login :0330m) pwd=raw_input(03332mPlease Enter System password login :0330m) if user = wugk and pwd = 123: print print 03331mHello %s ,Welcome to use the Find System!0330m % user while True: name = raw_input(Please Input your Find Name:) if name in dict: email = d
14、ictname print 03332mThe %s is in the system,and Email is %s0330m % (name,email) print else: if name = quit or name = exit: print 03334mExit success,welcome to used!0330m sys.exit() print 03332mThe %s is not in the system line!0330m % name else: print 03332mThe User or passwd input error ,Please retr
15、y.0330m5. Python企业脚本综合应用今天我们来研究企业运维备份脚本:#!/usr/bin/env python#auto backup system files#by wugk 2014-06-24import os,sys,timedate = time.strftime(%Y%m%d)source = /boot,/etc,/var/log/dir = /data/backup/r_dir = dir + date + /f_name = system_bak.tar.gzr_name = r_dir + f_name print 03332m+Welcome to use p
16、ython backup scripts for Linux +Now Time is %s +0330m % date time.sleep(2) def all_bak(): if os.path.exists(r_dir) = False: os.makedirs(r_dir) else: print This DIR %s is exists! % r_dir tar_cmd = tar -czvf %s %s % (r_name, .join(source) if os.system(tar_cmd) = 0: print This Backup System Files %s su
17、ccess ! % r_name else: print This Backup system Files %s Failed ! % r_name try: if sys.argv1 = all_bak: print Please waiting executing Command . all_bak()except IndexError: print 03331m-0330m print 03331mUsage: %s all_bak|help0330m % sys.argv0#Define add backup try: if sys.argv1 = help: print 03331m
18、-0330m print 03331mUsage: %s all_bak|help0330m % sys.argv0except IndexError: pass try: if len(sys.argv1) = 0: print 03331m-0330m print 03331mUsage: %s all_bak|help0330m % sys.argv0except IndexError: pass6. Python面向对象编程 今天我们将来学习面向对象的编程,之前我们学习的都是面向过程的编程:根据操作数据的函数或语句块来编写程序的。今天我们来看面向对象编程:把数据和功能结合起来,用称为对象的东西包裹起来组织程序的方法。这种方法称为面向对象的编程理念。在大多数时候你可以使用过程性的编程,但是有些时候当你想要编写大型程序或是寻求一个更加合适的解决方案的时候,你就得使用面向对象的编程技术。类和对象是面向对象编程的两个主要方面。创建一个新类型,而对象是这个类的实例。Python使用类(class)和对象(object),进行面向对象(object-oriented programming,简称OOP)的编程,面向对象的最主要目的是提高程序的重复使用性。7. Python面向编程类8. Python面向编程对象9. Python编程异常错误处理
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1