@不定长位置参数
在下面的例子中的*likesBy,表示点赞者,显然点赞者具体都有谁是不确定的
def sayLove(sender,toWhom,times,*likesBy,city="深圳",date="8月7日"):
print("来自%s的深情表白"%(sender))
print("亲爱的%s:"%(toWhom))
for i in range(times):
print("我是穿过大半个中国去睡你")
print("我是穿过枪林弹雨去睡你")
print("我是把无数个黑夜摁进一个黎明去睡你")
print("我是千万个我奔跑成一个我去睡你")
#应用关键字参数
print("——%s 于 %s"%(date,city))
# 应用不定长位置参数
print(likesBy,"表示点赞")
# 用【返回值】返回给调用者,表白的结果,返回值必然在最后一步
return "哦!"
# return 666
# return False
对这个函数发起调用,传递三个点赞者
result = sayLove("林阿华","拉芳",1,"易阿天","尔阿康","单阿信",city="北京",date="1月1日")
print("对方的回复是:",result)
@不定长关键字参数
在下面的例子中的*ps,表示备注信息,显然备注信息是可多可少的
def sayLove(sender, toWhom, count, *args, city="深圳", date="8月7日", **ps):
print("来自%s的深情表白" % (sender))
print("亲爱的%s:" % (toWhom))
for i in range(count):
print("我是穿过大半个中国去睡你")
print("我是穿过枪林弹雨去睡你")
print("我是把无数个黑夜摁进一个黎明去睡你")
print("我是千万个我奔跑成一个我去睡你")
# 应用不定长位置参数
print(args, "表示点赞")
# 应用不定长关键字参数
print("备注信息是",ps)
# 用【返回值】返回给调用者,表白的结果,返回值必然在最后一步
return "哦!"
调用上述方法,在所有不定长关键字参数处传入一堆自定义的键值对
result = sayLove(
"林阿华", "拉芳", 1, # 定长位置参数
"易阿天", "尔阿康", "单阿信", # 不定长位置参数
date="1月1日", city="台北", # 定长关键字参数
breakfast="狗不理包子", lunch="黄焖鸡米饭", supper="一碗香木桶饭" # 不定长关键字参数
)
print("对方的回复是:", result)