以交互方式使用python时,特殊变量_用于保存最后一次运算的结果。
python用换行或;代表一条语句的结束。用缩进表示循环的主体。也可以在一行结尾使用反斜杠(\)表示当前语句未结束,下一行不需要遵循任何缩进规则。
print格式化:
print “%3d %0.2f” % (year, value)
print format(year,"3d"),format(value,"0.2f")
print "{0:3d} {1:0.2f}".format(year,value)
print format中想要输出%,需要使用%%。想要print出50%,可以print “%s%%” % “50”
print line, #后面跟’,‘将忽略line结尾的换行符
要将程序的输出送到一个文件中,需要在print语句使用>>指定一个文件print >> fname, a或在python 3中使用print(a,file=fname)。当然也可以使用文件对象write方法。
条件语句:
if (a and not a) or c:
pass #do nothing
elif c:
print c
else:
print "else"
字符串:
使用三引号可以指定多行字符。
转义字符'\',可以在字符串前加r或R,这些字符串称为原始字符串,不转义,等同于c#中的@,但不能以转义字符'\'结尾,
字符串是一个0下标的字符序列,可以使用字符切片s[i:j]提取子字符串,提取规则是i<=k<j;
可以使用+连接两个字符串,python不会将字符串的值解释为数字。
str()和repr()都可以将非字符串转化为字符,str()和print的结果相同,repr可表示对象的精确值。例如repr(3.4)的结果是3.3999999999
列表:
列表是任意对象的序列。可以使用索引和切片。可以使用+连接列表。把值放入[]中可以创建列表:
names = [1,"cd",[2,3,"dave"]]
创建空列表:
names=[]
names=list()
高级特性:
fvalues = [float(line) for line in lines]
min(fvalues)
python提供两种方法对list进行排序:
方法1.用List的成员函数sort进行排序
方法2.用built-in函数sorted进行排序(从2.4开始)
--------------------------------sorted---------------------------------------
>>> help(sorted)
Help on built-in function sorted in module __builtin__:
sorted(...)
sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list
---------------------------------sort----------------------------------------
>>> help(list.sort)
Help on method_descriptor:
sort(...)
L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
cmp(x, y) -> -1, 0, 1
-----------------------------------------------------------------------------
iterable:是可迭代类型;
cmp:用于比较的函数,比较什么由key决定,有默认值,迭代集合中的一项;
key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项;
reverse:排序规则. reverse = True 或者 reverse = False,有默认值。
返回值:是一个经过排序的可迭代类型,与iterable一样。
注;一般来说,cmp和key可以使用lambda表达式。
sort()与sorted()的不同在于,sort是在原位重新排列列表,而sorted()是产生一个新的列表。
元组:
把值放入()可以创建元组。stock=("good",145,236)。没有圆括号python也能识别出元组;stock="good",134,245
元组和列表大部分功能类似(索引,切片,连接),但元组创建后不能修改。性能比列表要好。
可以将元组解包为一组变量:name,shares,price = stock
集合:
用于包含一组无序的对象(不会重复),支持并交差等集合操作。
字典
是一个关联数组或散列表
函数 对象 类 模块
python lambda的格式:lambda x: print x
生成器
yield,可以让函数返回一个结果序列,而不仅仅是一个值。通过.next获取结果序列。
协程
在函数中以表达式(yield)形式创建协程,从而能处理发送给它的一系列输入
异常
获得帮助:
help(对象或模块名)
dir(对象或模块名)
装饰器
类、函数或方法定义的前面可以使用@指定装饰器,修改定义后面的行为。
对象:
身份 --引用地址,整数,可通过id()返回
类型 -- type()
值
python中所有对象都是“第一类的”,意思是都能够赋值给标示符,都可以通过标示符调用。例如可以将函数、模块、异常等存入字典,然后通过字典调用。
运算符与表达式
多个变量可以一块赋值:a=b=c="other"
比较运算符可以连在一起。x<y>z等价于 x<y and y>z
序列s支持的运算:all(s) s中所有项为true则为true,any(s) 任一为true则为true
True、任意非零数字、非空字符串、列表元组或字典将返回True,而False、零、None和空的列表、元组和字典将返回False。
条件表达式:minvalue = a if a<b else b 等价于 if a<b: minvalue = a else: minvalue = b