在函数中,我定义了两个参数1:default
变量age=12
和2:variable-length
变量*friends
def variable(age=12,*friends):
print 'Age:', age
print 'Name:', friends
return
variable(15,'amit','rishabh') # RESULT is "Age: 15 & Name: 'amit', 'rishabh'
variable('rahul','sourabh') # Now here result is Age: rahul & Name: 'sourabh'
所以我的问题是,为什么函数不使用*friends
变量中的两个参数,为什么将第一个参数确定为age。
我需要的结果应采用以下格式:
variable(15,'name','surname') as Age:15 and Name: 'name','surname'
如果我不指定年龄为
variable('new','name') Result needed to be as. Age:12 & Name:'new','name'
答案 0 :(得分:1)
您可以尝试提供列表而不是各种参数,关键字参数也应始终放在参数之后:
def variable(friends, age=12):
print 'Age:', age
print 'Name:', ",".join(friends)
return
variable(['amit','rishabh'], 15) # RESULT is "Age: 15 & Name: 'amit', 'rishabh'
variable(['rahul','sourabh']) # Now here result is Age: rahul & Name: 'sourabh'
答案 1 :(得分:0)
尝试切换参数:
def variable(*friends,age=12):
print ('Age:', age)
print ('Name:', friends)
return
这应该有效。