首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ImportError:无法导入名称BaseHTTPRequestHandler

ImportError:无法导入名称BaseHTTPRequestHandler
EN

Stack Overflow用户
提问于 2012-11-30 10:47:56
回答 1查看 3.7K关注 0票数 0

我尝试从python wiki运行第一个示例,当我尝试运行它时:

代码语言:javascript
复制
$ python BaseHttpServer.py

我得到一个错误AttributeError:‘模块’对象没有属性'BaseHTTPRequestHandler'

我在2 64位上的Python2.7.3上测试了它:

代码语言:javascript
复制
Traceback (most recent call last):
  File "BaseHTTPServer.py", line 9, in <module>
    import BaseHTTPServer
  File "/home/vanveber/BaseHttpServer/BaseHTTPServer.py", line 14, in <module>
    class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
AttributeError: 'module' object has no attribute 'BaseHTTPRequestHandler'

在Windows 7 64位的Python2.7.3上

代码语言:javascript
复制
Traceback (most recent call last):
  File "BaseHTTPServer.py", line 11, in <module>
    from BaseHTTPServer import BaseHTTPRequestHandler
  File "C:\BaseHttpServer\BaseHTTPServer.py", line 11, in <module>
    from BaseHTTPServer import BaseHTTPRequestHandler
ImportError: cannot import name BaseHTTPRequestHandler

但是!

  1. BaseHttpServer是标准Python库中的一个类。
  2. 如果我在Windows上从Python上编写和运行这段代码,它将正确工作!

什么是问题,为什么?!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-30 10:50:54

解决方案:重命名python文件.

解释: BaseHTTPServer是标准库中的一个模块。当您在本地目录中有一个名为BaseHTTPServer.py的python文件时,您将隐藏标准库模块,并且您不能再导入它,因为语句

代码语言:javascript
复制
import BaseHTTPServer

不会导入标准库模块,而是导入本地BaseHTTPServer.py模块。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13643680

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档