你似乎误解了以下几点:range(10)会给你这个列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]。
你可以把它和for循环一起使用10次
random.randint(10, 90)将给你一个10到90之间的随机数(不是一个列表)
有了这些信息,我们可以将脚本更改为:import random
even_sum = 0
odd_sum = 0
for number_of_turns in range(10):
# Get a random number
number_this_turn = random.randint(10, 90)
print(number_this_turn,end=' ')
if number_this_turn % 2 == 0:
even_sum += number_this_turn
print("Sum of even numbers so far:", even_sum)
else:
odd_sum += number_this_turn
print("Sum of odd numbers so far:", odd_sum)
print("Final sum of even numbers:", even_sum)
print("Final sum of odd numbers:", odd_sum)
但我们可以做得更好。您将了解到,在Python中,您经常希望用所需的术语定义一个list(或iterable),然后对每个术语都做一些事情。所以我们可以将脚本更改为:
^{pr2}$
random_numbers = [random.randint(10, 90) for x in range(10)]正在使用list comprehension生成10个随机数的列表。然后你可以对每个数字做一个for循环,在那里你可以加上偶数和或赔率之和。在
你甚至可以进一步简化它,就像@Take\u Care的答案一样,但我想在你达到这个水平之前,你还有很多东西要学。在