2008年6月19日木曜日

PyScripter でモジュールを変更した場合、手動でインポート

次の二つのファイルがあるとする。

  • hoge.py
  • piyo.py

hoge.py では、piyo.py の hello() を呼び出す。

from piyo import *
hello()

ここで piyo.py で hello() を定義して、hoge.py を実行すると、 PyScripter (1.9.9.2) ではエラーが表示される。

def hello():
    print "piyo: hello()"

ただし、コマンドラインからの実行はエラーが表示されず問題ない。もちろん、Meadow のシェルコマンドからの実行も OK.

 

対処

080619-1この場合、PyScripter において piyo.py を変更後に、メニューより「Run > import Module」を選択する。これにより piyo モジュールがインポートされ、 hoge.py の実行がうまくいく。

Run > External Run」 ならば、 piyo.py におけるモジュールのインポート操作をしなくても問題ないようだ。

たくさんのモジュールを PyScripter で変更した場合、PyScripter の再起動が早いかな? ^^;

 

参考