手记

一些基础的python语句8

在函数里面定义的参数,出了这个函数,这个变量都是无效的/局部变量
在函数里面可以调用函数外面的变量/全局变量
如果想在函数里面修改一个全局变量的值,需要用到 global.


count=12
def 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+y

g=lambda = x,y:x+y

filter(,) filter有两个参数,第一个参数可以为一个函数或者None,第二个参数为一个可迭代数据/如果第一个参数为函数,则将第二个可迭代数据理的每一个元素作为函数的参数进行计算,返回True的值并作为一个列表。如果第一个参数为None,就将第二个参数里的True的值列出来作为一个列表


效果一


def odd(x):
    return x%2
temp=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]

0人推荐
随时随地看视频
慕课网APP