gpt4 book ai didi

python - 无法运行已安装的库

转载 作者:太空宇宙 更新时间:2023-11-03 17:03:55 27 4
gpt4 key购买 nike

当我这样做时:

import XYZ
XYZ.boo(xyz)

其中 XYZ 是一个库,boo 是该库上的函数,xyz 是我传递给该函数的参数。
我收到一个以

结尾的错误
AttributeError: module 'XYZ' has no attribute 'boo'

发生了什么?

<小时/>

注意:这应该是 canonical answer对于关于同一主题但隐含不同库的几个问题

最佳答案

仔细命名您的源文件

确保当前目录中没有任何 Python 脚本、模块或包与您要导入的内置或第三方模块同名。实际上,最好完全避免名称冲突。

假设您想尝试使用 Python 的 turtle模块。您决定将脚本命名为 turtle.py,并编写:

# turtle.py
import turtle

def move_turtle(num):
turtle.forward(num)

move_turtle(1)

当您运行它时,您会收到错误:

Traceback (most recent call last):
File "./turtle.py", line 2, in <module>
import turtle
File "/path/to/your/directory/turtle.py", line 7, in <module>
move_turtle(1)
File "/path/to/your/directory/turtle.py", line 5, in move_turtle
turtle.forward(num)
AttributeError: module 'turtle' has no attribute 'forward'

问题是您的 turtle.py 干扰了内置 turtle 模块的导入。 importturtle 语句实际上导入了本地 turtle.py 脚本,而不是内置脚本。

有一个简单的方法可以验证这是否是问题所在。在回溯中,最后提到的文件是 /path/to/your/directory/turtle.py",这表明您没有导入内置的 turtle 模块。内置海龟应位于类似于 Linux 上的 /usr/lib/pythonX.Y/turtle.pyC:\PythonXY\Lib\turtle.py 的位置> 在 Windows 上。

要解决此问题,请将脚本重命名为其他名称,例如 mytu​​rtle.py

关于python - 无法运行已安装的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34763399/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com