在 Python 2.7 中导入 urllib 或 urllib 2 失败,并出现 ImportError: Cannot import name iskeyword

mon*_*ics 2 python urllib python-import python-2.7

我无法在 Python 2.6 或 Python 2.7 安装上导入 urllib 或 urllib2。

Python 2.7.1+ (r271:86832, Apr 11 2011, 18:13:53) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/urllib.py", line 30, in <module>
    from urlparse import urljoin as basejoin
  File "/usr/lib/python2.7/urlparse.py", line 110, in <module>
    from collections import namedtuple
  File "/usr/lib/python2.7/collections.py", line 10, in <module>
    from keyword import iskeyword as _iskeyword
ImportError: cannot import name iskeyword
Run Code Online (Sandbox Code Playgroud)

我似乎也无法找到答案谷歌搜索“无法导入名称 iskeyword”。

Rom*_*huk 5

肯定存在一些导入冲突。您的工作区中是否有命名的模块keyword?接下来尝试:

>>> import keyword
>>> dir(keyword)
Run Code Online (Sandbox Code Playgroud)

  • 啊。是的,我显然不久前在名为 keywords.py 的文件夹中创建了一个测试文件,该文件未使用但导致与 urllib 发生冲突。删除它会使 import urllib 正常工作。谢谢您的帮助!我需要更好地学习Python命名空间。有什么一般智慧的话可以避免再次发生类似的情况,即我的文件名与正在导入的模块发生冲突吗? (2认同)