2012-10-21 3 views
0

파이썬 인터프리터에서 재생할 수없는 스크립트를 실행할 때 ImportError가 발생합니다.Non-reproducible 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 =/가정/어니스트/lib 디렉토리/파이썬으로 설정됩니다.

그것은 sys.path 에 문제가 lsaf

월 beYou 이름을 바꿀 lsaf.py

하여 스크립트의 이름을하지 않았다 확인하고이 작동 될 수

+2

'sys.path'에 문제가있을 수 있습니다 -'lsaf'는 어디에 있습니까? 'import lsaf;의 출력을주세요. print (lsaf)'. – delnan

+3

'lsaf.py'에 스크립트 이름을 지정하지 않았습니까? – dav1d

+0

@ dav1d 예, 이유가 무엇입니까? –

답변

0

는 스크립트 자체를 가져올 시도하지만이 자신의 스크립트에 lsaf에 패키지가 없습니다. import