Python使用random模块报错:'module' object is not callable
解决TypeError: 'module' object is not callable(random模块相关)
问题原因
你的脚本文件名是random.py,和Python标准库的random模块重名了。Python导入模块时会优先查找当前目录下的文件,所以import random实际导入的是你自己写的这个脚本,而非系统自带的标准库模块。你自己的模块里没有定义random()函数,加上循环导入的影响,导致random.random指向的是模块对象本身,调用时就会抛出这个错误。
解决步骤
- 重命名你的脚本文件,比如改成
test_random.py,绝对不能和Python标准库的模块名重名 - 如果当前目录下有
__pycache__文件夹,直接删除它,避免残留缓存干扰模块导入 - 重新运行脚本,此时
import random会正确加载标准库的random模块,random.random()就能正常生成0到1之间的随机浮点数了
可正常运行的代码
import random for i in range(3): print(random.random())
内容的提问来源于stack exchange,提问作者RiddhiBhai
相关产品推荐
相关产品推荐

