我有一个研究服务器,我用来运行一些python脚本。服务器只有python 2.4。我的问题是,当我尝试在服务器上运行测试时,它会破坏import语句。我的文件结构是:
|-- README.md
|-- poly.py
`-- tests
|-- __init__.py
|-- test_foil.py
tests/__init__.py
看起来像
from test_foil import *
unittest.main()
和test_foil.py
最初看起来像
import unittest
from poly import Poly
在我的计算机上,当我运行python tests/__init__.py
时,测试会执行。但是当我在服务器上运行它时会出现错误
from test_foil import *
Traceback (most recent call last):
File "tests/__init__.py", line 1, in ?
from test_foil import *
File "/home/simon_team/partition_poly/tests/test_foil.py", line 2, in ?
from poly import Poly
ImportError: No module named poly
在服务器上运行测试并非100%的关键,但在运行实际代码之前,这将是确保代码兼容2.4的一种非常方便的方法。我不能为我的生活弄清楚为什么它在两台机器上表现不同,因为文档并没有表明import
的行为从2.4变为2.7
答案 0 :(得分:2)
import sys
sys.path.append("path_to_directory")
from poly import Poly