标签:序列 没有 python学习 传递 手册 函数返回值 对象 val 分配
函数返回值可以通过(,)进行收集,即函数可以通过返回一个元组来达到返回多个值的目的
def func(*args,name) 参数必须在调用中按照关键字传递
在函数头部,参数必须以此顺序出现,任何一般参数,紧跟着任何默认参数(name=vcalue),后面是*name的形式,后面跟着任何name或name=value keyword-only参数,后面跟着**name形式
用默认值分配给在头部未得到分配的参数
def f (a,b,c):
print(a,b,c)
f(1,2,3)
f(c=3,b=2,a=1)
f(1,c=3,b=2)
#1 2 3
#1 2 3
#1 2 3
def f (a=1,b=2,c=3):
print(a,b,c)
f(3,5)
f(3,c=5)
#3 5 3
#3 2 5
def f (a,b=2,*args): #收集位置参数
print("a=",a,"b=",b,"args=",args)
f(1,3,3456,4,5)
def f (a,b=2,**args): #收集关键字参数
print("a=",a,"b=",b,"args=",args)
f(1,b=3,c=4,d=5)
def f (a,b=2,*arg,**args): #混用
print("a=",a,"b=",b,"arg=",arg,"args=",args)
# a= 1 b= 3 args= (3456, 4, 5)
# a= 1 b= 3 args= {'c': 4, 'd': 5}
# a= 1 b= 2 arg= (3,) args= {'c': 4, 'd': 5}
把一个序列拆分开来分别赋值给函数的参数
def func(a,b,c,d):
print(a,b,c,d)
l = [1,23,4,5]
t = (1,2,3,4)
s = {1,2,3,4}
d = {'a':1,'b':2,'c':3,'d':4}
func(*l)
func(*t)
func(*s)
func(**d)
#1 23 4 5
# 1 2 3 4
# 1 2 3 4
# 1 2 3 4
标签:序列 没有 python学习 传递 手册 函数返回值 对象 val 分配
原文地址:https://www.cnblogs.com/yingyingdeyueer/p/11852942.html