arg&kw_arg

Run Settings
LanguagePython
Language Version
Run Command
# case 1 simply, normal way def a(x): print("function a",x) a(1) # case 2 set default value at function argument def a(x=1): print("function a",x) a(2) a() # case 3 non-default argument follows default argument # def a(x=1,y,z): # print("function a",x) # a(2,1) # 2 assign to x 1 assign to y and missing value for x # case 4 better arrange all assignment at the end def a(x,y,z=1): print("function a case 4 :",x,y,z) a(2,3,4) a(2,3) # case 5 function call with keyword arguments def a(x,y,z=1): print("function a",x,y,z) a(2,z=4,y=3) # provide keyword at function call level, keyword order doesn't matter # a(2,x=3) # 2 is still assign to x, get multiple values for argument 'x' # once use keyword argument, the rest must be keyword argument # a(z=4,2,3) # error a(z=4,y=3,x=1) # all value with keyword argument # case 6 def a(x,y,z=1): print("function a",x,y,z) a(y=2,x=1) # -*arg---------------------- # case 7 def a(x,y,*arg): print("function a case 7 :",x,y,arg) print(type(arg)) a(1,2,3,4,5,6,7,8) # case 8 missing 1 required keyword-only argument: 'z' # def a(x,y,*arg,z): # print("function a case 9 :",x,y,arg,z) # print(arg[0]+arg[1]) # a(1,2,3,4,5,6,7,8) # case 9 def a(x,y,*arg,z=1): print("function a case 9 :",x,y,arg,z) print(arg[0]+arg[1]) a(1,2,3,4,5,6,7,8) # case 10 def a(x,y,z=1,*arg): print("function a case 10 :",x,y,arg,z) a(1,2,3,4,5,6,7,8) a(1,2) # case 11 def a(x,y,*arg,z): print("function a case 11 :",x,y,arg,z) a(1,2,3,4,5,6,7,8,z=10) # case 12 missing 1 required keyword-only argument: 'z' # def a(x,y,*arg,z): # print("function a case 12 :",x,y,arg,z) # a(1,2) # case 13 * without arg variable a() takes 0 positional arguments byt 8 were given def a(*,z): print("function a case 13 :",z) # a(1,2,3,4,5,6,7,8) a(z=1) # case 14 **kwarg def a(*,z,**kwarg): print("function a case 14 :",z,kwarg) a(z=1,y=2,x=3) # case 15 **kwarg def a(v,w,z,**kwarg): print("function a case 15 :",v,w,z,kwarg) a(2,4,z=1,y=2,x=3) # case 16 *arg **kwarg def a(*arg, **kwarg): print("function a case 16 :",arg,kwarg) a(2,4,z=1,y=2,x=3) def a(*, z): print(z) a(z=4) def a(v,w,*,y,z,**kwarg): # after *, argument must be getting keyword assignment from caller print("function a case 14 :",v,w,y,z,kwarg) a(4,5,z=1,y=2,x=3) # help(print) # def a(arg,**kwarg): # print("function a case 16 :", arg, kwarg, sep = '$') # a(2,4,z=1,y=2,'x'=3)
Editor Settings
Theme
Key bindings
Full width
Lines