刚开始接触程式设计 现在用bytes of python练习
VarArgs parameters这一章的东西我不太理解怎么运作的
以下是书上的范例
def total(initial=5, *numbers, **keywords):
count = initial
for number in numbers:
count += number
for key in keywords:
count += keywords[key]
return count
print(total(10, 1, 2, 3, vegetables=50, fruits=100))
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
问题一:10, 1, 2, 3是被归类到*numbers吗?
而vegetables=50, fruits=100是被归类到**keywords
问题二:count = initial接下来的计算不是应该会变成5+后面的数值 但打印出来结果
却是166 一开始把initial=5这行的作用是什么呢?
问题三:for number in numbers:
number是否因为加了*号所以被归类到*numberS里面
我后来把def total(initial=5, *numbers, **keywords):
里面的numbers改成number结果也是一样的 那为什么要写成number in numbers
但如果把for number in numbers
count += number
改成 for numbers in numbers
count += numbers
结果也是一样的 那为什么作者会用number做变量名称呢
感觉使用numbers会比较好理解
超新手问题可能问的没有很清楚 整个脑筋很打结啊..