Python 3因为知识代码有限而无效

时间:2017-04-11 08:46:05

标签: python python-3.x

当前代码:

import random
numbers=[]
for i in range(20):
    spam = random.randint(1,30)
    print(spam)

我想将spam插入numbers,但这就是我被困住的地方。

预期结果:

20个随机数列表

4 个答案:

答案 0 :(得分:2)

您几乎就在那里,但您需要将其附加到列表numbers,而不是仅打印随机数。只需将行numbers.append(spam)添加到for循环的正文中。

(如果您不再需要,可以删除print语句。)

有更优雅的方法来构建此列表(请参阅列表理解答案),但在您的级别append没问题。

答案 1 :(得分:1)

使用此代码

import random
numbers=[]
for i in range(20):
    spam = random.randint(1,30)
    numbers.append(spam)
print numbers

<强>输出

[14, 19, 5, 20, 17, 8, 7, 28, 18, 3, 26, 9, 10, 15, 28, 20, 8, 26, 13, 16]

你的可能会有所不同,因为它们是随机数

答案 2 :(得分:1)

或者你可以使用列表理解:

numbers = [random.randint(1, 30) for _ in range(20)]

答案 3 :(得分:0)

import numpy as np
import random
# np.random.randint can take 3 arguments low, high and size. 
# In this case an array of 20 (size) random integers from range 1 (low) to 30 (high) 
# will be printed. The range is inclusive of 1 and exclusive of 30.    

spam =  np.random.randint(1,30,20); print(spam)

[ 5 12 16 19 27 19 27  9 12  2 21  7  7 12  4 13  4 28 21  5]