- 如下代码的输出是什么?为什么?
def func(a, b = 4, c = 5):
print(a,b,c)
>>>func(1,2)
>>>1 2 5
按顺序,1传递给a, 2传递给b,c默认为5
- 如下代码的输出是什么?为什么?
def func(a, b = 4, c = 5):
print(a,b,c)
>>>func(1, c =3 ,b=2)
>>>1 2 3
传递参数不安顺序,按变量名
- 如下代码的输出是什么?为什么?
def func(a, *pargs):
print(a, pargs)
>>>func(1,2,3)
>>>1 (2,3)
*pargs是可变参数,将后面的所有非键值数据收集到元组中
- 如下代码的输出是什么?为什么?
def func(a, **kargs):
print(a, kpargs)
>>>func(a=1,c=3,b=2)
>>>1 {'c':3, 'b'=2}
*kargs收集关键字参数到字典中
- 最后一次运行时,如下代码的输出是什么?为什么?
def func(a, b,c=3,d=4):
print(a, b,c,d)
>>>func(1,*(5,6))
>>>1 5 6 4
显而易见...解包参数
6. 举出三种以上函数和调用者能够交流结果的方法
return
全局变量(不多用)
可变参数