pythonファイルをスクリプト実行
MATLABでの.mファイルのようにpythonファイルのスクリプト実行をしたいと思い調べてみた
%run -i (IPython 環境の場合)
条件:IPython(Jupyter Notebookなど)
「test.py」のあるフォルダで
%run -i test.py
によって、「test.py」のスクリプトでの実行ができる。
名前空間はメインのものと同じとなるもよう。
forの中に入れることも可能。
execコマンド (IPython以外でも使える方法) 2018.9.7追記
「test.py」のあるフォルダで
with open('test.py', 'r', encoding='utf-8') as f:
script = f.read()#スクリプトのファイルを文字列として読み込む
exec(script) #execで文字列を実行
によって、「test.py」のスクリプトでの実行ができる
通常、別ファイルからモジュールとしてをimportを使った場合、グローバル変数がファイル毎に異なるので、純粋なスクリプトにはならない模様。
名前空間が別ファイルにまたがり、可読性が悪化するなど、あくまで個人の実験用として使うべき。