#Python学习笔记(day3)——函数参数的传递

函数参数的传递、变量作用域、lambda的使用规则、常用的两个bif(筛选bif——filter(),map())

P1:

1、位置参数和关键字参数都是传递参数的方式,不能算作参数的类型,和默认参数不可进行并列

2、关键字参数要在位置参数的后面

3、*形参和默认参数在一起时,形参位置不同实参的传递方式也不同。若*形参在前,则只能通过关键字参数修改默认参数的值;若默认参数在前,只能通过位置参数修改默认参数的值

P2:

1、对于函数内部重新声明的 和全局变量重名的变量,它的生存期只有函数内部

2、若想在函数内部修改全局变量,需要在函数内部利用关键字global进行声明

3、

    在Fun2()中的x是Python重新创建的一个局部的x,不是5

    将非全局变量的外部变量引入闭包函数利用的是关键字nonlocal

    将全局变量在全局可见可修改利用关键字global

    将外界变量传到函数内部,最原始的方法是利用参数传递

P3:

1、lambda的使用规则:lambda [arguments]: expression。lambda+参数+冒号+返回值,这是一个匿名的函数,使用时需要起一个名字

2、filter()的使用规则:filter(function or None, iterable) --> filter object。注意:filter(筛选条件,筛选对象),返回值是满足条件为True的迭代对象的集合。筛选对象为True的iterable,可以是数值1,也可以是满足的某个条件。function只需要输入函数名即可,不用附上()

    ps:对于一个布尔类型的函数,如  return  n%2==1 返回值为布尔类型

3、map()的使用规则,map的使用规则和filter类似。filter的功能是批量筛选,而map()的功能则是批量运算。使用规则:map(func, *iterables) --> map object。注意此处使用规则,filter()只能对一个迭代对象进行判断,但是map()可以对多个进行运算。并将返回一个所有迭代对象运算之后值集合的对象。

猜你喜欢

转载自blog.csdn.net/pioneer_AC/article/details/81083495
今日推荐