def f(name, gender = ‘male‘, *args, **kw): pass
位置参数:name
默认参数:gender
非关键字可变长参数:args
关键字参数:kw
tips:四者的顺序必须是(位置参数)+(默认参数)+(非关键字可变长参数)+(关键字参数)
特殊情况:
def f(name, gender = ‘male‘, *args, **kw): print ‘name: %s‘ % name print ‘gender: %s‘ % gender if args != (): #print ‘args: %d‘ % args # for x in args: # print ‘args: %s‘ % x print args if kw != {}: for eachKey in kw: print ‘%s:%s‘ % (eachKey, kw[eachKey]) t = tuple(range(3)) d = dict(a = 1, b = 2) f(‘wm‘, ‘female‘, 10, x = 1,*t, **d) 运行结果: name: wm gender: female (10, 0, 1, 2) a:1 x:1 b:2
10在t之前出现,同时,t = (0, 1, 2),最后的结果是(10, 0, 1, 2)顺序与元素出现顺序一致,因为元组不可变。
因为dict无序,所以元素位置不定。
时间: 2024-10-10 15:40:45