Pythonをシェルスクリプトライクに使って他のコードを実行する

Qiitaに書けば良いと思うでしょ。僕もそう思う。

 

参考にさせていただいたサイト。

kyotogeopython.zawawahoge.com

 

subprocessモジュールを使う。osでも良さそうだが、非推奨っぽい?MacOS High Sierra, Pythonのversionは3.6.3。

import subprocess

 

for i in range(1000):

    subprocess.run(['python', 'anotherprogram.py', str(i) ])

 

runの第一引数にリストを渡して、区切ればよい。

bashのaliasでpy=pythonとしている自堕落な私だが、リストの一番目を'py'としても走らないことに注意。

anotherprogram.pyの引数として今はiを渡している。計算スクリプトをパラメータを変えながら何度も走らせたい場合等を想定している。シェルスクリプトで書いてももちろん大丈夫なのだけど。