如何在python中添加8个随机生成的数字的输出?

Uru*_*uk 0 python random integer generated python-2.7

elif a == "other":
    numberset = 0
    for count in range(8):
        nnn = randrange(33,126)
        print(nnn)
        numberset += nnn
Run Code Online (Sandbox Code Playgroud)

我需要找出如何添加所有8个生成的数字来制作总数,然后将其设置为变量.

Pyn*_*hia 5

为什么不

numberset = sum(randrange(33, 126) for _ in range(8))
Run Code Online (Sandbox Code Playgroud)

参数sum是一个生成器表达式,即它生成一个sum可以迭代的生成器,对给定的所有值求和.

如您所见,我使用该_名称作为计数器.它是那些未被进一步使用的变量的命名约定(即在循环中,count从未使用过)

如果您想要打印出数字(并保留它们),您可以这样做

numbers = [randrange(33, 126) for _ in range(8)] # list comprehension
numberset = sum(numbers)
for n in numbers:
    print(n)
print('Sum is', numberset)
Run Code Online (Sandbox Code Playgroud)

哪个产生

112
69
77
33
56
55
118
65
Sum is 585
Run Code Online (Sandbox Code Playgroud)