ImportError:在使用virtualenv的PyCharm下没有名为test_data的模块,但是test_data.py与test.py在同一目录中

时间:2012-05-03 18:56:19

标签: python import virtualenv pycharm unittest2

在test.py中,我尝试导入test_data:

import unittest2
import re

from test_data import receipt1_example

test_data.py与test.py位于同一目录中。我收到以下错误:

  

/Users/ahammond/.virtualenvs/ric2.6/bin/python2.6   /Applications/PyCharm.app/helpers/pycharm/utrunner.py   /Users/ahammond/src/hackfest_spring_2012/parse_me/test.py::test true   测试从上午11:30开始...... Traceback(最近的呼叫最后一次):
  文件“/Applications/PyCharm.app/helpers/pycharm/utrunner.py”,行   121,在       module = loadSource(a [0])文件“/Applications/PyCharm.app/helpers/pycharm/utrunner.py”,第44行,in   loadSource       module = imp.load_source(moduleName,fileName)文件“/Users/ahammond/src/hackfest_spring_2012/parse_me/test.py”,第4行,   在       来自test_data import receipt1_example ImportError:没有名为test_data的模块

     

使用退出代码1完成处理

正如您所看到的,我使用virtualenv在pycharm下运行它。以下是配置的屏幕截图:

PyCharm debug configuration

2 个答案:

答案 0 :(得分:4)

我使用的工作是:

import sys
import os
try:
    import test_data
except ImportError:
    sys.path.append(os.path.dirname(__file__))
    try:
        import test_data
    finally:
        sys.path.remove(os.path.dirname(__file__))

一位朋友告诉我,还可以将目录条目添加到某些包含目录。

答案 1 :(得分:3)

请尝试PyCharm 2.5.1 RCsys.path构建有一个错误(它包含错误的,重复的项目源目录)。

如果不是这样,您可以在Preferences |中将其他目录标记为来源Project Structure或将其添加到Python Interpreters中的路径