繁体   English   中英

random.randint 错误

[英]random.randint error

我有一些看起来像这样的代码:

import random

n = 0
while n <= 50:
  n = n+1
  a = random.randint(1, 16)
  b = random.randint(1, 5)
  print n, ". ", a, "-", b, "= "

出于某种原因,在运行它时,我收到以下错误: AttributeError: 'module' object has no attribute 'randint' 但是,在 IDLE 中运行相同的 random.randint 查询时我没有问题。 我怎样才能解决这个问题?

您在某处有另一个名为“随机”的模块。 您是否将脚本命名为“random.py”?

检查您的文件名! 在您的情况下,“随机”是关键字,您不能使用“随机”作为文件名。 注意没有文件被命名为random.py

将您的文件名从random.py更改为任何其他名称,例如random_number.py可以解决您的问题。

代码对我来说很好用,所以你的 PYTHONPATH 上必须有另一个名为“random”的模块

尝试 dir(random) 以查看其中的内容。 这可能会使您更容易记住为什么有另一个名为 random 的模块以及它的位置。

如果您正在处理的文件名或项目中的另一个文件名为“random.py”,则您的程序会尝试在该位置查找 randint 函数,但找不到它。

您应该将任何文件名 random.py 更改为其他名称。 or any other function in the module.在此之后,“import random”将解析为“实际”random.py 模块,您将成功使用或模块中的任何其他函数。

错误与文件名有关

可能你项目中的python文件或其他文件的名字是random.py,所以改了之后就不会出错了

您可以使用 numpy array 轻松解决问题,只需执行以下操作

import numpy as np

n = 0
while n <= 50:
  n = n+1
  a = np.random.randint(1, 16)
  b = np.random.randint(1, 5)
  print n, ". ", a, "-", b, "= "

AttributeError: 'module' object has no attribute 'randint' 同样的错误也显示给我,所以我做错了 import random 但我的文件名也是 random.py 所以我将文件名更改为 ranom_data.py 所以它的工作简单示例与共享你

import random
x = random.randint(1,10)
print(x)

所以这是工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM