<p>对于许多参数,请尝试*args</p>
<pre><code>def marble_game(*args):
points = 0
for item in args:
for i in item:
if i == "black":
points += 2
elif i == "red":
points += 5
elif i == "silver":
points += 7
return points
print(marble_game(["red","red","silver"]))
print(marble_game(["red", "red", "silver"], ["blue", "blue", "blue"]))
</code></pre>
<p>对于列表的最高值-将值始终存储在“点”中,并在列表具有较高值时覆盖:</p>
<pre><code> def marble_game(*args):
points = 0
for item in args:
current = 0
for i in (item):
if i == "black":
current += 2
elif i == "red":
current += 5
elif i == "silver":
current += 7
if current > points:
points = current
return points
</code></pre>
<p>最后一点是:)你可能想把你的分数保存在字典里——因为你的if语句会增长,这会让你的代码读起来有点困难</p>
<pre><code> def marble_game(*args):
points = 0
score_dict = {'black': 2,
'red' : 5,
'silver' : 7}
for item in args:
current = 0
for i in item:
current += score_dict.get(i, 0)
if current > points:
points = current
return points
</code></pre>