当我运行一个无法在Python解释器中重现的脚本时,我得到一个ImportError。
$ head -6 bin/taglint
#!/usr/bin/env python
#
import re
from lsaf.lsaf import file_info, error, exit
$ taglint
Traceback (most recent call last):
File "/home/ernest/bin/taglint", line 5, in <module>
from lsaf.lsaf import file_info, error, exit
ImportError: No module named lsaf
但是,导入在翻译中工作正常:
$ /usr/bin/env python
Python 2.7.3rc2 (default, Apr 22 2012, 22:30:17)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from lsaf.lsaf import file_info, error, exit
>>>
这里发生了什么?
其他信息:
Python 2.7.3rc2 (default, Apr 22 2012, 22:30:17)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import lsaf; print(lsaf)
<module 'lsaf' from '/home/ernest/lib/python/lsaf/__init__.pyc'>
PYTHONPATH环境变量设置为PYTHONPATH = / home / ernest / lib / python。
答案 0 :(得分:0)
这可能是sys.path
的问题
检查您的lsaf
可能是您没有按lsaf.py
重命名它并且它会起作用,您的脚本会尝试自行导入,但您自己的脚本中的lsaf
中没有包。 importception