一些基础的python语句8
2016-09-01 19:28:28 来源:慕课网
在函数里面可以调用函数外面的变量/全局变量
如果想在函数里面修改一个全局变量的值,需要用到 global.
count=12def add(): global count count+=8 print(count) 结果应为20
闭包
def add(x): def app(y): return x*y return app>>> add(30)(5) 150 app(y)就是add(x)的闭包
在闭包里面内部函数如果想改变外部函数的参数,可以使用nonlocal ;方法跟global相当
lambda:有两个参数,冒号前面的是原函数的参数,在冒号后面的是原函数的返回值
def add(x,y): return x+yg=lambda = x,y:x+y filter(,) filter有两个参数,第一个参数可以为一个函数或者None,第二个参数为一个可迭代数据/如果第一个参数为函数,则将第二个可迭代数据理的每一个元素作为函数的参数进行计算,返回True的值并作为一个列表。如果第一个参数为None,就将第二个参数里的True的值列出来作为一个列表
效果一
def odd(x): return x%2temp=range(10)show=filter(odd,temp)print(list(show)) 效果二
print(list(filter(lambda x:x%2,range(10)))) 这两种方法都是一样的 结果为[1,3,5,7,9]
map(,) 有两个参数,第一个参数为一个函数,第二个参数为一个可迭代对象/作用为把第二个可迭代对象带入到第一个参数中,并把结果生成一个列表
print(list(map(lambda x:x*2,range(10)))) 结果为[0,2,4,6,8,10,12,14,16,18]