好的,所以我试图让程序执行三个步骤......
1:在(m,n)之间选择一个数字,这是传入的参数(设置为变量“repeat”)
2:从第一步中选择一个介于 0 和变量“重复”之间的随机数。(设置为变量“o”)
3:从“重复”中减去“o”并将结果设置为变量“p”
因此我得到一个数字(比如说 100)
然后是 0-100 的随机数(比如说 40)
然后我得到 100-40 (60...) 的差异
然后我希望程序运行一个for循环“o”(40)次和另一个for循环“p”(60)次......
for 循环部分的代码如下所示(请记住,在此之前还有更多代码......它与这个问题并不真正相关:
def randomStars(pic,m,n):
repeat=random.randint(200,300)
o=random.randint(0,repeat)
p=repeat-o
for i in o:
star(pic,x,y)
for j in p:
largeStar(pic,x,y)
show(pic)
发生的事情是我在线收到一条错误消息:for i in o: 表示“迭代非序列不适当的参数类型
在设置了 3 个变量并且它们正在工作之后,我还添加了打印语句...... ex.1 repeat=230; o=103;p=127 ex.2 重复=221;o=72;p=149
然后我立即尝试让 for 循环运行“o”次,并收到上述错误消息......我不明白它是如何成为非序列的。但也许我只是不理解序列的定义