【发布时间】:2022-01-05 15:37:13
【问题描述】:
from random import randint
k=[]
for i in range(10):
k.append(randint(1,5))
k.sort()
print(k)
输出是正确的,但有时它不包括从 1 到 5 的值。例如,可能 k=[2,3,3,3,3,4,4,5,5,5] 并且不包括 1 . 我需要包括所有数字
【问题讨论】:
-
为什么要排序10次?
-
@PatrickArtner 我的错误,但如果列表中不包含 1、2、3、4、5,我需要重新排序。我必须使用 while 循环吗?或者什么
-
取 range(1, 6) 从该范围添加随机数,然后创建结果的随机排列,以便初始常数位于随机位置,而不是全部位于开头。或者选择一个介于 1...n-4 之间的随机数并取那么多 1,然后选择一个介于 1...n-4-k 之间的随机数,其中 k 是到目前为止每个下一个数字所取的项目之和,然后随机化顺序(随机排列)。看看你能不能自己编码,如果不能告诉我。
标签: python python-3.x list function