函数
1. 变量作用域
A, 全局变量作用于全局,局部变量作用于函数。
B, 当全局变量与局部变量同名时,局部变量优先。
C, 在函数里改全局变量值时(变量名相同),加上global 变量名 ,在使用。
2. 匿名函数
A, lambda语法 lambda[arg1 [,arg2,.....argn]]:expression
B, 可以作为一个函数传参。
C, 三个重要的方法:
>>> foo = [2, 18, 9, 22, 17, 24, 8, 12, 27] >>> >>> print filter(lambda x: x % 3 == 0, foo) [18, 9, 24, 12, 27] >>> >>> print map(lambda x: x * 2 + 10, foo) [14, 46, 28, 54, 44, 58, 26, 34, 64] >>> >>> print reduce(lambda x, y: x + y, foo) 139
Filter 过滤
Map字典
Reduce 遍历累加
3. 定义调用
A.语法 def 函数名():
任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数
函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明
函数内容以冒号起始,并且缩进
return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None
B. 调用:函数名(参数)
4. 传参
必需参数:必需参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样。
- 关键字参数:关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值。允许函数调用时参数的顺序与声明时不一致。
- 默认参数:调用函数时,如果没有传递参数,则会使用默认参数
- 不定长参数:你可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,和上述2种参数不同,声明时不会命名
- 语法:加了星号(*)的变量名会存放所有未命名的变量参数
-
def functionname([formal_args,] *var_args_tuple ): "函数_文档字符串" function_suite return [expression]
-
两个*号
-
def(**kwargs) 把N个关键字参数转化为字典:
>>> def func(country,province,**kwargs): ... print(country,province,kwargs) ... >>> func("China","Sichuan",city = "Chengdu", section = "JingJiang") China Sichuan {'city': 'Chengdu', 'section': 'JingJiang'} >>>
1528

被折叠的 条评论
为什么被折叠?



