为什么Python从错误的路径中给我一个错误?

时间:2013-02-11 12:34:08

标签: python windows-xp python-2.5

好的,所以这很奇怪...... 我在Windows XP上运行Python 2.5,并使用easy_install来获取库java2python。我试图运行j2py.py,但每当我这样做时,它都会给我这个错误:


C:\Python25\Lib\site-packages>j2py.py
Traceback (most recent call last):
  File "C:\Python25\Lib\site-packages\j2py.py", line 16, in 
    from java2python.compiler import Module, buildAST, transformAST
  File "C:\Python25\Lib\site-packages\__init__.py", line 9, in 

  File "c:\python25\lib\site-packages\java2python-0.5.1-py2.5.egg\java2python\co
mpiler\block.py", line 16, in 
  File "c:\python25\lib\site-packages\java2python-0.5.1-py2.5.egg\java2python\co
mpiler\visitor.py", line 15, in 
ImportError: cannot import name reduce

所以我进入java2python-0.5.1-py2.5.egg文件夹并删除了reduce的导入。这仍然会导致错误,但我当时并不知道。我再次运行它,即使该线已被删除,它也有我的完全相同的错误。我将java2python-0.5.1-py2.5.egg目录下的java2python文件夹移到了site-packages目录中,它给了我同样的错误。我从easy_install.pth中删除了java2python-0.5.1-py2.5.egg,并且出现了相同的错误。我甚至在同一个命令提示符下执行了此命令:


C:\Python25\Lib\site-packages>cd c:\python25\lib\site-packages\java2python-0.5.1
-py2.5.egg\java2python\compiler
The system cannot find the path specified.

我只是不明白。为什么会这样?

1 个答案:

答案 0 :(得分:1)

导入的reduce表示java2python是在比2.5更新的python版本上制作和测试的。 删除后错误仍然存​​在可能是因为visitor.py [c]仍然在您的路径中并且由于某种原因未更新。特别是因为在您完全删除.egg

之后它仍然存在

我会尝试导入访问者,然后使用vistory.__file__查看正在加载的文件的实际文件位置。