我想要的是while循环运行并生成随机数量的int的随机列表.
import random
randAmount = random.randint(15,20)
randNumber = random.randint(2,5)
numbList = []
lookFor = 3
while len(numbList) < randAmount:
numbList.append(randNumber)
Run Code Online (Sandbox Code Playgroud)
我的输出:
[4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]
Run Code Online (Sandbox Code Playgroud)
为了randNumber重复不同的数字,我该怎么办?
注意:如果数字重复可以.
你只调用randint() 一次来生成randNumber.如果你想生成不同的随机数,你需要在循环中继续调用它:
while len(numbList) < randAmount:
numbList.append(random.randint(2,5))
Run Code Online (Sandbox Code Playgroud)
你可以while在这里使用列表理解而不是循环;
numbList = [random.randint(2, 5) for _ in range(random.randint(15, 20))]
Run Code Online (Sandbox Code Playgroud)
快速演示后一种方法:
>>> import random
>>> [random.randint(2, 5) for _ in range(random.randint(15, 20))]
[2, 5, 3, 5, 5, 2, 3, 4, 3, 4, 3, 2, 4, 3, 2, 5, 3]
>>> [random.randint(2, 5) for _ in range(random.randint(15, 20))]
[2, 2, 2, 5, 3, 5, 3, 4, 4, 3, 5, 3, 5, 5, 5]
>>> [random.randint(2, 5) for _ in range(random.randint(15, 20))]
[5, 2, 5, 2, 5, 5, 4, 5, 2, 4, 2, 2, 4, 3, 3, 3, 3, 4, 2]
>>> [random.randint(2, 5) for _ in range(random.randint(15, 20))]
[3, 5, 5, 3, 4, 2, 3, 2, 5, 3, 4, 4, 2, 5, 5, 4, 2, 4]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
93 次 |
| 最近记录: |