一,
- def f1(*a): ## 形参前加一个 * 号, 实参可以给任意多个值都可以接收
- print(a)
- f1(123,344)
二,
- def f1(**a): ## 形参必须传入字典形式
- print(a)
- f1(k1=123,k2=344)
三,
- def f1(*a,**aa): ## 以上两种格式的实参都可以接收, 万能参
- print(a)
- f1(1111,k1=123,k2=344)
四,
* , 元组, 传入元组元素
** , 字典, 字典元素
习惯:
def test(*args,**kwargs)
五, 为动态参数传入 列表, 字典, 元组
- def f1(*args)
- print(args,type(args)) ## 元组,([11,22,33,44],123)
- li = [11,22,33,44]
- f1(li,123) ## 输出 ([11,22,33,44],123)
- f1(*li,123) ## 输出 (11,22,33,44,123) , 输出列表中的每个数到元组里 , 验证输出时加不加 * 的区别
六, 全局变量, 局部变量
def fun1():
a=123 局部变量
- print(a)
- def fun2():
- a=1456
- print(a)
在函数内修改全局变量
应该使用 global , 例如 global p
来源: http://www.bubuko.com/infodetail-2659747.html