2020-08-17
阅读量:
1236
固定参数和可变参数的区别
定义函数时,参数可以有两种:
一种是在参数表中写明参数名key的参数,固定了顺序和数量的固定参数:
def func(key1, key2, key3, …)
def func(key1, key2=value, …)一种是定义时还不知道会有多少参数传入的可变参数:
def func(*args): #不带key的多个参数
def func(**kwargs): #key=value形式的多个参数示例:
固定参数:
def func_test(key1, key2, key3=23): print("key1=%s, key2=%s, key3=%s" % (key1, key2, key3)) func_test('v1', 'v2')func_test('a', 'b', 768)func_test(key2='kk', key1='k')123456
可变参数:
#可随意传入0个或多个无名参数def func_test2(*args): for arg, i in zip(args, range(len(args))): print('arg%d=%s' % (i, arg)) func_test2('a', 'b', 23, True)123456
#可随意传入0个或多个带名参数def func_test3(**kwargs): for key, value in kwargs.items(): print('%s=%s' % (key, value))func_test3(name='Tom', sep='sofie', age=23)123456
调用函数的时候可以传进两种参数:
一种是没有名字的位置参数:
func(arg1, arg2, arg3, …)
会按照前后顺序对应到函数的参数传入一种是带key的关键字参数:
func(key1=arg1, key2=arg2, …)
由于指定了key可以不按照顺序对应注意:如果混用位置参数必须在前,关键字参数 必须在后






评论(0)


暂无数据
推荐帖子
2条评论
0条评论
2条评论