2014-05-11 29 views
3

当我尝试从特定目录(我们称之为python_scripts)导入opencv时,python2.7解释器将挂起。然而,当我从我的主目录(或任何其他目录比python_scripts)导入,导入工作得很好:仅在特定目录中导入Python失败

python2.7 
>>> import cv2 
>>> 

我看不到比工作之外的其他目录之间的任何显着的区别是我的主目录,挂起的目录是一个包含一堆python脚本的目录。没有任何bash脚本改变$ PYTHONPATH变量。

另一个问题是,当我尝试在我的主目录中导入scipy和numpy时,这些工作正常。然而,在python_scripts目录,“进口SciPy的”挂起,我收到以下错误为numpy的:

>>> import scipy 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/lib/python2.7/site-packages/numpy/__init__.py", line 153, in <module> 
    from . import add_newdocs 
    File "/usr/lib/python2.7/site-packages/numpy/add_newdocs.py", line 13, in <module> 
    from numpy.lib import add_newdoc 
    File "/usr/lib/python2.7/site-packages/numpy/lib/__init__.py", line 17, in <module> 
    from . import scimath as emath 
ImportError: cannot import name scimath 

等进口,如“数学进口”或“进口随机”做工精细的python_scripts目录。这只是opencv,numpy和scipy库,似乎有问题。

这并非总是如此。我能够很好地导入cv2并运行一些基本的图像I/O命令。当我尝试使用VideoCapture时,此问题开始发生。但现在我根本无法导入opencv。

我尝试关闭并重新打开终端模拟器,并没有工作。

任何帮助表示赞赏。

编辑:python_scripts目录列表是:

cameo.py  filters.py managers.pyc  rects.pyc  utils.py 
cameo.py.org filters.pyc MyOutputVid.avi stream_video.py utils.pyc 
cascades  io.py  MyPic.png  tags    video_stream.py 
depth.py  io.pyc  notes.txt  trackers.py 
depth.pyc  managers.py rects.py   trackers.pyc 

瀑布是.xml文件目录:

haarcascade_eye.xml    haarcascade_mcs_mouth.xml 
haarcascade_frontalface_alt.xml haarcascade_mcs_nose.xml 
+0

这个脚本目录究竟是什么包含.py文件?你可以发布目录列表吗? –

+1

检查您的目录中是否没有任何名为* cv2.py *和/或* scipy.py *的文件。 –

+0

好的,我添加了目录列表。我没有cv2.py或scipy.py文件。 – Sterling

回答

3

由于Bakuriu说,这个问题是存在的,因为蟒蛇已经有一个I/O模块和我的目录包含一个io.py文件。通过重命名io.py和io.pyc文件解决了该问题。