python语言
2015年7月27日
16:55
###如何在python编程时,添加中文注释:
定义文件编码在文件头使用注释的形式加编码定义用utf-8就一切OK了。
# coding: utf-8 定义文件的编码 该部分只是针对python3以下的部分才需要的。
长字符串: 若需要一个非常长的字符串,需要跨多行,可使用三个引号"` …….."`来代替普通引号。字符串前后使用的引号必须是对应匹配的。使用单引号和双引号指定的字符串必须在一个逻辑行上。普通字符串也可跨行,若一行之中最后的一个字符是反斜线,那么换行符本身就转义,也就是被忽略了。
行结构和缩进:程序中的每条语句都以换行符结束。可以使用续航符(\)将长句分为几行,如下所示:
a =math.cos() + \
math.sin()
如果函数体、条件语句、循环或类较短,而且只包含一条语句,就可以将其放在同一行上,例如:
If a: statement1
要表示一个空的函数体或代码块,可使用pass语句。
\n:换行符 ; \v:垂直制表符 \t:水平制表符 ;\r:回车符。
关于python的换行与否的问题:在2.7版本下 Print‘ ’此时不会换行,在3.0及以上的版本中,print(#object,sep=' ',end='\n')
python的__name__ 和__doc__属性
__name__:用于判断当前模块是不是程序入口,若当前程序正在使用,__name__的值为__main__.
python语言中函数的定义和使用:
Def 函数名( 参数列表):
1、print " "与C语言一样是输出。
Printe r:原始字符串以r开头,看起来可在原始字符中放入任何字符。
若DOS路径的最后一个字符有可能是反斜线 print r " " "\\",本质上就是把反斜线单独作为一个字符串来处理。
2、获取用户输入 >input (" 数据")
>raw_input("数据”) input会假设用户输入的是合法的python表达式,若以字符串作为输入的名字,程序的运行是没有问题的。 raw_input函数会把所有的输入当做原始数据,然后放入字符串中。
然后获取数据。
3、函数:函数就像可用来实现特定功能的小程序一样,可以给它提供参数。
4、模块:可以把模块想象成导入到python以增强其功能的扩展。需要使用特殊的命令import来导入模块,然后按照“模块.函数”的格式使用这个模块的函数。
import 模块
模块.函数(参数) 。在确定袭击不会导入多个同名函数(从不同模块导入的情况下,可能不希望在每次调用函数时,都要写上模块的名字,可使用:
from 模块 import函数
在使用上述这种格式之后,可直接使用函数,而不需要模块名作为前缀。
5、让脚本像普通程序一样运行:
1、unix #!加上用于解释脚本程序的绝对路径 /usr/bin/env python 宣告python的环境或路径变量。
在实际运行脚本之前,必须先让脚本文件具有可执行属性。 ./ xx.py 即可执行。
2、windows: 在程序运行完毕后,窗口也跟着关闭,输入名字还没有来得及看便关闭。需在最后一行加上代码 raw_input("press <enter>") ,输入回车后界面关闭。
Type:返回对象的种类。
Str(object):将值转化为字符串。
列表、元组和字典里面可在不实用续行符(\)的情况下分布在多行上,最后一项后面允许跟逗号。
s.format()方法用于执行字符串格式化操作,它接受任意位置与关键字的组合。
s中使用{item}表示的占位符被正确参数替代,而关键字参数可使用{name}这样的占位符进行引用。
a="your name is {0} and your age is {age}"
a.format("amikea",age=40)
lambda运算符:
Lambda args:expression args:以逗号分割的参数列表。expression用到这些参数的表达式。
使用lambda语句定义的代码必须是合法表达式。
a=lambda x,y:x+y
序列:序列包含6种内建的序列:列表、元组、字符串、unicode字符串 、 xrange对象。
列表:是任意对象的序列。把值放在方括号中就可以创建列表。A =[1,2,3,5'hello']
元组:将一组值打包到一个对象中去。在圆括号中放入一组值即可。b=(10,20,30)
列表和元组的区别:列组能修改,而元组不能修改。
集合:用于包含一组无序的对象。要创建集合,可使用set()函数。集合中的元素不能重复。
s=set([2,4,5,3])
t=set("hello")
a、分片:与使用索引来访问单个元素、系,可使用分片操作来访问一定范围内的元素。简而言之,分片操作的实现需要提供两个索引作为边界,第一个索引的元素是包含分片,而第二个索引的元素则不包含在分片内。 Tag [ : ]
用数字X乘以一个序列会生成新的序列,而在新的序列中。原来的序列将被重复X次。
改变列表:元素赋值。改变列表很容易,只需要使用普通赋值语句 X=[1,1,1]
x[1]=2
b、分片赋值: name = list ("perl")
方法的调用方式: 对象.方法(参数)
1、append:用于在列表末尾追加新的对象; a.append(4) 在a集合内的末尾追加元素4
2、count:统计某个元素在列表中出现的次数;
3、extend:可在列表的末尾一次性追加另外一个序列中的多个值,亦即是可以用新列表扩展原有的列表。a.extend(b),其中a、b都为列表。
4、index:该方法用于从列表中找出某个值第一个匹配项的索引位置。
5、insert:insert方法用于将对象插入到列表中,x=[1,2,3,5,6]
x.insert(3,"4")
6、pop:会移除列表中的一个元素(默认是最后一个),并且返回该元素的值。x.pop()
7、remove:用于移除列表中某个值的第一个匹配项,而不是移除所有的。
8、reverse:将列表中的元素反向存放。
9、sort:在原位置对列表进行排序,这意味着改变原来的列表。
10、另一种获取已知排序的列表副本的方法: 使用sorted函数。
11、sort方法另外2个可选的参数-key和reverse,若要使用它们,那么就要通过名字来指定,必须提供一个在排序过程中使用的函数。x.sort(关键字)关键字例如(key=len),另一个关键字是reverse布尔值,true或者false,用来指明列表是否要进行反向排序。
12.title:它会将字符串转换为标题。
13、replace:该方法返回某字符串的所有匹配项均被替换之后得到字符串。
元组:不可变序列,元组的元素是不能修改的。创建元素语法很简单:若用逗号分割了一些值,那么就自动创建元组。切记,元组内的数据是没有办法修改的。
tuple函数:与list函数基本上是一样的:以一个序列作为参数,并把它转换为元组。若参数就是元组,则该参数就会被原样返回。