【发布时间】:2022-01-12 23:47:34
【问题描述】:
我尝试使用randint 在range(1,6) 中选择4 个数字。我使用for 循环做到了。但在那之后我必须编写 python pytest 测试。所以我遇到了问题,因为在使用monkeypatch而不是例如[1,2,3,4]进行断言之后,我得到了[[1,2,3,4], [1,2,3,4], [1,2,3,4], [1,2,3,4]]。
所以我想问一下是否有可能同时选择4个项目而不是使用randint 4次。
def throw_a_cube():
a = []
for x in range(4):
x = randint(1, 6)
a.append(x)
return a
【问题讨论】:
-
欢迎来到 Stack Overflow!请阅读How to create a Minimal, Reproducible Example 并确保包含重现问题所需的所有代码。
-
您只需要返回
x,然后callthrow_a_cube()四次。 -
不要将
randint结果分配给x,这是您的循环变量。我怀疑分配给循环变量没有奏效,并且默默地失败了。使用另一个变量,例如num持有 randint 然后a.append(num)
标签: python list for-loop random pytest