不确定传参*numbers *list 关键字字典形式参数**kargs
def fun(name,age,**kwargs): return kwargs print(fun('fqs','18',address="beijing",school='xy')) ''' {'address': 'beijing', 'school': 'xy'} '''
# 函数 不确定的参数情况下 输出 n*n的和 def calc(numbers): total=0 for n in numbers: print(f'n:{n}') total=total+n*n print(f'total:{total}') return total #调用函数 result=calc((1,2)) print(f'result:{result}') ''' this x is in the funcx:--> 9 -------------- this x is in the funcx:--> 9 '''
# 函数 不确定的参数情况下 输出 n*n的和 def calc(*numbers): total=0 for n in numbers: print(f'n:{n}') total=total+n*n print(f'total:{total}') return total #调用函数 result=calc(1,2,3)# 不需要强调以元祖形式传入参数 print(f'result:{result}')
# 函数 不确定的参数情况下 输出 n*n的和 def calc(*numbers): total=0 for n in numbers: print(f'n:{n}') total=total+n*n print(f'total:{total}') return total #调用函数 list=[1,2,3] result=calc(*list)# 不需要强调以元祖形式传入参数 等同于result=calc(list[0],list[1],list[2])
print(f'result:{result}') ''' n:1 total:1 n:2 total:5 n:3 total:14 result:14 '''
# 关键字可变参数 **kargs 多个字典key='value'参数 def register_student(name,age,**kargs): print('name:',name,'age:',age,'other:',kargs) result1=register_student('fqs',35) print(result1) ''' name: fqs age: 35 other: {} None ''' # 传入一个字典key='value'参数 result2=register_student('d',3,address='beijing') print(result2) ''' name: d age: 3 other: {'address': 'beijing'} ''' # 传入两个个字典key='value'参数 result3=register_student('d',3,city='beijing',school='chang') print(result3) ''' name: d age: 3 other: {'city': 'beijing', 'school': 'chang'} '''