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