gpt4 book ai didi

python - 如何修复错误 "AttributeError: ' 模块的对象在 python3 中没有属性 'client'?

转载 作者:太空狗 更新时间:2023-10-29 21:46:18 26 4
gpt4 key购买 nike

以下是我的代码。

import http
h1 = http.client.HTTPConnection('www.bing.com')

我觉得没问题。但是 python 给我以下错误:

AttributeError: 'module' object has no attribute 'client'.

我想知道为什么以及如何解决它。谢谢。

最佳答案

首先,导入包不会自动导入它的所有子模块。*

那么试试这个:

import http.client

如果这不起作用,那么很可能您在 的其他地方有一个名为 http.py 的文件,或一个名为 http 的目录>sys.path(很可能是当前目录)。您可以很容易地检查:

import http
http.__file__

应该给出一些目录,例如 /usr/lib/python3.3/http/__init__.py/Library/Frameworks/Python.framework/Versions/3.4/lib/python3 .4/http/__init__.py 或其他看起来很明显是 system-y 和 stdlib-y 的东西;如果你得到的是 /home/me/src/myproject/http.py,这就是你的问题。通过重命名您的模块来修复它,使其与您要使用的 stdlib 模块不具有相同的名称。


如果这不是问题所在,那么您的 Python 安装可能已损坏,或者两个 Python 安装相互混淆。最常见的原因是安装你的第二个 Python 编辑了你的 PYTHONPATH 环境变量,但你的第一个 Python 仍然是当你输入 python 时运行的那个。


* 但有时确实如此。这取决于模块。有时您无法判断某个东西是包含非模块成员的包(如 http),还是包含子模块的模块 (os)。幸运的是,没关系;它总是保存到 import os.pathimport http.client,无论是否有必要。

关于python - 如何修复错误 "AttributeError: ' 模块的对象在 python3 中没有属性 'client'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25278607/

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