0

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 に設定されています。

4

1 に答える 1