プログラムの中からサーチパスを変更するには、
sysモジュールを使用する。
sysモジュールのpath属性の値を変更することでサーチパスを変えることができる。
ということで、やってみる。
>>> sys.path
['', '/usr/lib/python24.zip', '/usr/lib/python2.4', '/usr/lib/python2.4/plat-linux2',
'/usr/lib/python2.4/lib-tk', '/usr/lib/python2.4/lib-dynload',
'/usr/local/lib/python2.4/site-packages',
'/usr/lib/python2.4/site-packages',
'/var/lib/python-support/python2.4']
>>>
今、こんな感じ。
で変更してみる。
>>> sys.path = []
>>> sys.path
[]
>>>
何もない状態に変更。これで昨日作ったdir1.heboモジュールも探せない筈。
>>> import dir1.hebo
Traceback (most recent call last):
File "", line 1, in ?
ImportError: No module named dir1.hebo
>>>
よし、探せない。
今度は、dir1.heboモジュールをheboだけでインポートできるようにsys.pathを変更する。
>>> sys.path.append('./dir1')
>>> import hebo
hebo loading
hebo done
>>>
うむ。
インポートできた。
注意点
sys.pathの値の変更は、対話型セッションまたはプログラムが終了すれば無効になる。
おしまい。
.
0 コメント:
コメントを投稿