python笔记三
上一篇 / 下一篇 2016-02-05 19:24:07 / 个人分类:python
语句
缩进:python语句块以冒号开始,不用大括号了括号了各种括号,再也不用担心哪里多了或少些了个括号了,只要缩进保持一致即可,一般使用4个空格或Tab键,当然如果你喜欢,1个空格也可以
如if x>0:
print '大于0'
elif x=0:
print '等于0'
else:
print '小于0'
if语句可以嵌套,但要注意缩进
条件判断:< > != is in not in not and or
可以这样写,0<x<5,也可以x>0 and x<5
in 表示判断成员资格,检查成员是否存在于序列中
如:if 's' in 'send':
*python中,除了false\None\0\''\[]\{}\(),这几个外,其余全部为真
*逻辑判断,短路逻辑:
即,a and b等价于
if a:
return b
else:
return a
当a为真时,返回b,a不为真,返回a
C0\pR[,A ]0
a or b等价于
if a:
return a
else:
return b
5W.dsc X~ @*c5M!~0
while和for循环,都可以使用break,contiune以及和else一起使用
如:
x=2
while x>0:
if x==2:
print '等于2'
break
x=x-1
else:
print '没有找到等于2的值'
注意:else和while保持相同的缩进,当while循环内的值没有找到等于2的值时,执行else
51Testing软件测试网AW$fi0wH;g2V
for循环
1.for i in range(5):
2.多个值循环,d为字典,下面的for循环则打印字典的key和value值
for key,value in d.items():
print key,value
*try/except/else/finally语句,处理异常,
如:
try:
test(a,b)
except ZeroDivisonErrot:
print '被零除'
except NameError:
print 'name error'
else:
print '没有出现异常'
finally:
print '出不出现异常都要执行的'
(g M+D%w5X0]0
*函数
1.定义函数,使用def关键字,参数不需要指定类型,可以提供默认参数,以及可变参数
如:def test(a,b=None):
if b is None:
return a
elif a==b:
return
print '不会被打印'
return可以返回值,也可以直接返回,将不执行下面的语句
2.接受可变个数的参数,
def pargs(*args):
for i in args:
……
参数可以是列表或元祖
3.接受字典参数
def dargs(**args):
for key,value in args:
……
调用 dargs(one=1,two=2),
注意,只能接受指定了关键字的参数,不能直接使用字典参数
4.分解参数
如果参数个数是固定的,可以将字典或序列传递给参数,如
dif func(a,b,c):
print a,b,c
args=(3,4,5)
func(*args)
51Testing软件测试网 kJ.i-|2]"J?;S
args={'a':3,'b':4,'c':5}
func(**args)
5.函数的嵌套
def add(a,b):
def inner(x,y):
return x+y
return inner(a,b)
6.文档字符串:类似于帮助文档
在函数内部,使用3个单引号开始和结束的字符串,用以说明函数
使用funcname.__doc__来调用
7.其他相关:
单行函数:lambda
f=lambda x,y:x+y
f(1,2)等价于def add(x y):return x+y
map :对序列的每个元素应用函数
%h S*Z'n `6s0
def double(x):return x+2
L=[1,2,3]
map(double,L)
F%S |!N9]vg0
返回[2,3,4]
C fE%`8ahy5w;['[,f%z0
filter:对序列进行过滤
filter((lambda x:x>2),L),返回[3]
$[7G W)K!P0
reduce:对序列的元素进行迭代操作
51Testing软件测试网w9\o7be9n.dk{a6|
reduce((lambda x,y:x+y),[1,2,3])
返回结果为:6.序列的元素加
51Testing软件测试网&m0Vl+@Z3q/rU$rM
zip:并行遍历
L1=[1,2,3]
L2=[A,B,C]
zip(L1,L2)=[(1,A),(2,B),(3,C)]
如果长度不一致,则取长度最短的序列