我试图为 Canvas 上生成的对象创建随机坐标( Canvas 是用户屏幕的大小,因此范围不断变化。)
random.randrange(12.5, int(resX-12.5))
这是代码行 resX,它是存储用户屏幕分辨率大小的变量,12.5 是生成的形状的半径。
我收到的错误是 resX 部分不是整数
ValueError:randrange() 的非整数参数 1
我不确定是否有办法在随机行中使用变量?
最佳答案
您需要random.uniform
来获取特定范围内的随机 float :
>>> resX = 100
>>> random.uniform(12.5, int(resX-12.5))
55.797969682558296
请注意,由于您可以将 float 作为范围传递到 uniform()
中,因此您可能不需要在 resX- 上调用
但由于此更改可能会影响结果,因此这取决于您想要的。否则您可以按照以下方式进行操作:int
函数12.5
>>> random.uniform(12.5, resX-12.5)
66.1303523838728
关于python - Randrange 依赖于变量 - Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34447532/