Python基本语法:1.一般申明格式为:#coding=utf-8#词句可以让本脚本内使用中文字符.必须声明在最前面,写中间没用.#!/usr/bin/python如果脚本中含有中文或者中文符号,将报错如下:SyntaxError:Non-ASCIIcharacter,butnoencodingdeclared.(有非ASCII的字符,但是没有编码申明)2.Python中的变量类型不需要声明,变量的赋值操作既是变量声明和定义的过程。counter=100#赋值整型变量miles=1000.0#浮点型name=John#字符串a,b,c=1,2,john#连续赋值.赋值后可以用del来取消赋值,并做内存清除.比如dela;#a的赋值就取消了,内存里找不到a的变量了.Del可以dela,b;批量delPython有五个标准的数据类型:Numbers(数字)String(字符串)List(列表)Tuple(元组)Dictionary(字典)Python支持四种不同的数值类型:int(有符号整型)long(长整型[也可以代表八进制和十六进制])float(浮点型)complex(复数)print如果什么都不接,可起到换行的作用.Print“Doyouloveme,”,“Doyou”,可用双引号加逗号来把多个语句同时输出.3.字符串字符串索引和列表索引和元组索引语法一致都是name[]:从左到右索引默认0开始的,最大范围是字符串长度少1从右到左索引默认-1开始的,最大范围是字符串开头s='ilovepython'则s[1:5]=love;s[1:]=lovepython;s[:-4]=”lovepy”;s[-4]=t;右边的数一定大于左边加号(+)是字符串连接运算符,星号(*)是重复操作a=s+aini;a=ilovepythonaini;a=s*2,a=ilovepythonilovepython;'str'objectdoesnotsupportitemassignment字符串不支持内部赋值.比如设置s[2]=”Y”;ord('a')ord函数是将字符转化为对应的ASCII码值,97chr(97)chr函数是将数字转化为字符。aprintahref=\(a,a);需要转义的时候再转义,不需要转义的时候,就不转义,比如”如果不做转义操作,就会报语法错误,因为””都是配对的.Repr(“list”),print后是’list’Str(“list”),print后是listEval(“a+1”),print是a+1的和.会参与运算.但是a必须是数值型,比如a=333;不能是字符串形式;以u或U开头的字符串表示unicode字符串Unicode是书写国际文本的标准方法。如果你想要用非英语写文本,那么你需要有一个支持Unicode的编辑器。类似地,Python允许你处理Unicode文本——你只需要在字符串前加上前缀u或U,uThisisaUnicodestring.以r或R开头的字符串表示按原样输出.里边的字符串不做转义操作.unicode=u'我',应该可以用str()把U’’里边的字符串转换成普通的字符串.hello_out=uHelloworld\n创建了一个Unicode格式的字符串bytes_out=hello_out.encode(“utf-8”)4.List列表数据类型:列表用[]来标识,列表支持内部赋值,比如list[2]=’abc’;列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。list=['abcd',786,2.23,'john',70.2];ainilist=[238,2834];printlist+ainilist;分片的扩展形式:list[A:J:K]意思是从A到J-1,每隔K个元素索引一次,如果K为负数,就是按从由右往左索引.此list并非函数,而是列表(或叫字符串名称);dellist[2]:就删除了第三项数据.dellist:就删除了整个list.len(list):计算list的长度.List.append():在列表的末尾处新增一个列表项‘’“”是一样的,即[‘a’]=[“a”];但是如果打印输出的话,就是输出[‘a’];5.元组,用()来标识List=(1,2,3);内部元素用逗号隔开。但是元素不能二次赋值,相当于只读列表。元组是不允许更新的。而列表是允许更新的len((1,2,3)):元组的长度.del元组name:删除元组.任意无符号的对象,以逗号隔开,默认为元组,比如,array=’a’,‘b’,1,2,3,指的是元组,但是不能含有无引号字母.6.字典(Hash)(dictionary)列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用{}标识。字典由索引(key)和它对应的值value组成,中间用:隔开;键必须独一无二,值则随意.如果后续出现了键一样的,则会被赋新值.比如:dict2={'abc':123,'abc':235};则改字典只有:'abc':235;通过索引键,访问字典里的值:dict2[‘abc’]即可.如果没有键可以访问,则输出keyerror信息:printdict2['abc'];KeyError:'abc'修改键值:dict2[‘abc’]=876;增加键值:dict2[‘bcd’]=977;新增的键值显示在前面:{'bcd':977,'abc':876}deldict['Name'];#删除键是'Name'的条目dict2.clear();#清空词典所有条目deldict2;#删除词典zidian={}zidian['one']=Thisisonezidian[2]=ThisistwoNewzidian={'name':'john','code':6734,'dept':'sales'}printNewzidian;输出整个字典.printNewzidian.keys()输出整个字典的keysprintNewzidian.values()输出整个字典的values.7.IO/FileStream:raw_input();丛标准输入中读取一行文本,并返还一个字符串(已去换号符),默认的标准输入是键盘.通常写法是:Str1=rawinput(“pleaseinputyourname:”);Print“yournameis:”,Str1;快速的写法可以是:printraw_input(pleaseinputyourname:);input()函数,与raw_input()函数基本一样,但是input()函数会假设你的输入是一个有效的Python表达式,并返回运算结果.比如上面的例子,如果输入1+2,那Yournameis:3;打开文件对象Fileobject=open(file_name[,access_mode][,buffering])HF=open(\);#file_name,wb一定要加双引号.可以是windows的路径符号,也可以带有空格,但是不能是中文路径.file_name:file_name变量是一个包含了你要访问的文件名称的字符串值。access_mode:access_mode决定了打开文件的模式:只读,写入,追加等。所有可取值见如下的完全列表。这个参数是非强制的,默认文件访问模式为只读(r),还有wb(读写模式,覆盖性),ab(读写模式,增加性)buffering:如果buffering的值被设为0,就不会有寄存。如果buffering的值取1,访问文件时会寄存行。如果将buffering的值设为大于1的整数,表明了这就是的寄存区的缓冲大小。如果取负值,寄存区的缓冲大小则为系统默认。关闭文件:fileobject.close();写文件:fileobject.write()方法,写文件2:writeline()是输出后换行,下次写会在下一行写。读文件字符数:fileobject.read(N),N代表读的字符总数.如果N,默认可能把整个文件的所有字符都读进去.读行1:fileobject.readlines()自动将文件内容分析成一个行的列表,该列表可以由Python的for...in...结构进行处理。读行2:fileobject.readline()每次只读取一行,通常比.readlines()慢得多。仅当没有足够内存可以一次读取整个文件时,才应该使用.readline()。读到哪里就显示读到哪里:fileobject.tell();8.OS自带方法,cmd-Dos命令importos;#os必须小写,不然会报错的.os.rename(list2.txt,listtt.txt);os.remove(list2.txt);os.mkdir(Newfolder);os.chdir(Newfolder);os.mkdir(Newfolder);os.listdir(os.getcwd());os.system(ls%s%s%(dir,filename))传入参数运行CMD-Dos命令:importos;os.system(“Yourcommand”);比如:os.system(rd/Q/SNewfolder)就可以删除非空文件夹.b=os.path.exists(你要判断的路径)b=os.path.isfile(你要判断的路径返回值b:True或Falseb=os.path.isdir(你要判断的路径)9.函数函数代码块以def关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以冒号起始,并且缩进。Return[expression]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回Nonedeffun(参数):“funinfo”;做相关处理的语句;return结果;或者什么都不接,表示returntonone.根据参数的不同.可分为:a.赋值参数函数b.引用变量参数函数c.默认参数函数d.不定长参数,就是暂时不确定有多少参数.函数10.Import引进其他模块,或其他python文档,比如有一个Test.py里边定义了多个函数与变量,只需要把Test.py放到当前目录下,或者放到pythonpath下,即一般是:C:\python27\lib下面;即可被搜索到.importTest1,当引用Test1的Sayhello()函数时候,需要加Test1.Sayhello()才能用.***************重大区别***********************fromTest1importSayhello;当引用Test1的Sayhello()函数时候,直接用Sayhello()就可以了,不能加Test1.Sayhello(),否则会出错,说Test1.没定义.importos;dir(module)可以列出当前引用的模块的所有的变量名,函数等.printdir(os);__init__.py:python的每个模块的包中,都有一个__init__.py文件,有了这个文件,我们才能导入这个目录下的子module或者孙module,我们在导入一个包时,实际上导入了它的__init__.py文件,并自动运行该文件.我们可以再__init__.py文件中再导入其他的包,或者模块.importreadersimportwriters11,异常与捕捉try:statements;except:Ifthereisanyexception,thenexecutethisblock.else:Ifthereisno