Python 属性错误:部分初始化模块';随机';没有属性';选择';
在运行程序时Python 属性错误:部分初始化模块';随机';没有属性';选择';,python,module,Python,Module,在运行程序时 import random x=[1,3,6,7] print(random.choice(x)) 文件“c:\Users\Slug\Desktop\100 days\day 4\random.py”,第1行,在 随机输入 文件“c:\Users\Slug\Desktop\100 days\day 4\random.py”,第3行,在 打印(随机选择(x)) AttributeError:部分初始化的模块“random”没有属性“choice”(很可能是由于循环导入) 首先,
import random
x=[1,3,6,7]
print(random.choice(x))
文件“c:\Users\Slug\Desktop\100 days\day 4\random.py”,第1行,在
随机输入
文件“c:\Users\Slug\Desktop\100 days\day 4\random.py”,第3行,在
打印(随机选择(x))
AttributeError:部分初始化的模块“random”没有属性“choice”(很可能是由于循环导入)
首先,您的问题代码不是标准格式,我只是想提醒您下次避免同样的问题。
解决问题的步骤。
你的问题显然是:
您的python名称与模块名称相同。
您需要将python文件“random.py”重命名为另一个名称,如“r1balabala.py”或任何您想要使用的名称,只要它与模块名称不同
总结如下:
在进一步学习python时,应始终使文件名特定于需要导入的模块,并且与模块不同。原因:python拦截器无法确定需要导入的文件。(本地.py脚本或模块!)
最好的祝愿您是否将文件命名为与模块相同的名称?您是在正在创建的软件包中运行此文件,还是将其作为独立脚本运行?如果您正在编写软件包,请共享目录的外观以及相关文件的导入语句:)如果您更仔细地查看回溯,您会发现问题在于
c:\Users\Slug\Desktop\100 days\day 4\random.py(您的程序)的第1行正在尝试导入模块random
,换句话说,它本身将您的程序称为其他程序。
File "c:\Users\Slug\Desktop\100 days\day 4\random.py", line 1, in <module>
import random
File "c:\Users\Slug\Desktop\100 days\day 4\random.py", line 3, in <module>
print(random.choice(x))
AttributeError: partially initialized module 'random' has no attribute 'choice' (most likely due to a circular import)