帮助解决Python urllib2导入错误

3 投票
2 回答
1397 浏览
提问于 2025-04-15 17:12

在我的脚本中,我导入了urllib2,这个脚本之前运行得很好。但是重启后,我遇到了以下错误:

  File "demo.py", line 2, in <module>
    import urllib2
  File "/usr/lib/python2.6/urllib2.py", line 92, in <module>
    import httplib
  File "/usr/lib/python2.6/httplib.py", line 78, in <module>
    import mimetools
  File "/usr/lib/python2.6/mimetools.py", line 6, in <module>
    import tempfile
  File "/usr/lib/python2.6/tempfile.py", line 34, in <module>
    from random import Random as _Random
ImportError: cannot import name Random

而当我单独使用 import random 时,它又能正常工作。你们觉得可能是什么问题呢?

我使用的是ubuntu 9.10(已经更新到最新)。谢谢!

2 个回答

0

确认一下random是标准库里的模块,而不是从sys.path中找来的某个名字相同的随便模块。

>>> inspect.getabsfile(random)
5

通常的解释是,当你运行脚本时,当前目录下有一个叫 random.py 的文件。这样一来,tempfile 就会不小心导入这个 random 文件,而不是标准库里的 random 模块。

撰写回答