def f (name, gender = ' male ', *args, **kw): Pass
Positional parameters: Name
Default parameter: Gender
Non-keyword variable-length parameter: args
Keyword parameter: kw
Tips: The order of the four must be (positional parameter) + (default parameter) + (non-keyword variable long parameter) + (keyword parameter)
Special cases:
def f (name, gender = ' male ', *args, **kw): print ' name:%s '% name print ' Gender:%s '% gender if args! = (): c6/> #print ' args:%d '% args# for x in args:# print ' args:%s '% x print args if kw! = {}: for eachk EY in kw: print '%s:%s '% (Eachkey, kw[eachkey]) T = tuple (range (3)) d = dict (a = 1, b = 2) F (' wm ', ' female ', ten, x = 1, *t, **d) operation result: Name:wmgender:female (0, 1, 2) a:1x:1b:2
10 occurs before t, at the same time, T = (0, 1, 2), and the final result is (10, 0, 1, 2) in the order in which the elements appear, because the tuple is immutable.
Because the dict is unordered, the element position is uncertain.
Positional parameters, default parameters, non-keyword variable-length arguments, keyword variable-length parameters