#函数举例
def my_len(s): #自定义函数,接收参数,形式参数,形参 i = 0 for k in s: i +=1 return i ret = my_len('金老板小护士') #传递参数,传参,实际参数,实参 print(ret) print(my_len([1,2,3,4,5]))
def sum(*args): #args接收的位置参数生成为元组 print(args) #(1,2) (1,2,3) (1, 2, 3, 4) n = 0 for i in args: n += i return n print(sum(1,2)) #3 print(sum(1,2,3)) #6 print(sum(1,2,3,4)) #10
def func(**kwargs): #接收的关键字参数生成为字典 print(kwargs) func(a=1) #{'a': 1} func(a=1,b=2) #{'a': 1, 'b': 2} func(a=1,b=2,c=3) #{'a': 1, 'b': 2, 'c': 3} def func(*args,**kwargs): print(args,kwargs) #(1, 2, 3, 4, 5) {'a': 'adc', 'b': 'djfs'} func(1,2,3,4,5,a='adc',b='djfs')
def func(*args,**kwargs): print(args,kwargs) #(1, 2, 3, 4, 5) {'a': 'adc', 'b': 'djfs'} func(1,2,3,4,5,a='adc',b='djfs')
#传递参数的顺序:位置参数,*args,默认参数,**kwargs
#如:def func(a,b,*args,default=1,**kwargs)
#动态传递参数的另一种方式
def func(*args): print(args) func(1,2,3,4,5) #(1, 2, 3, 4, 5) p = [1,2,3,4,5] func(*p) #(1, 2, 3, 4, 5)
def func(**kwargs): print(kwargs) func(a=1,b=2) #{'a': 1, 'b': 2} d = {'a':1,'b':2} func(**d) #{'a': 1, 'b': 2}
#函数的注释
def func(): ''' 这个函数的功能 参数1: 参数2: :return:返回什么值 ''' pass