0

私はpythonが初めてです。
引数を文字列または浮動小数点数としてスレーブ スクリプトに渡す方法を学びました。
例として、メイン スクリプトを次に示します。

#main script (mainscript.py)
import subprocess, sys
import numpy as np

x = np.linspace(0.5,3.2,10)

for i in range(x.size) :
    subprocess.call([sys.executable,'slavescript.py',
                     '%s' %sys.argv[1], '%s' %sys.argv[2], '%s' %xpnt[i]])

そしてここにスレーブスクリプトがあります:

#slave script (slavescript.py)

import sys

sys.argv[1] = str(sys.argv[1])
sys.argv[2] = int(sys.argv[2])
sys.argv[3] = float(sys.argv[3])

...
...

ここで、Python の場合、次のコマンドを実行します。

run mainscript.py N 5

次に、slavescript.py は N を文字列として、5 を整数として使用し始め、3 番目の引数は float に変換されます。slavescript.py は m 回実行されます。m は配列 x のサイズです。

配列 x の内容全体を一度に渡したいと思います。つまり、メイン スクリプトで for ループを使用しません。subprocess.call の引数には文字列しかないと思います...誰かが私を助けたり、ヒントをくれたりする時間があればいいのにと思います。

注目してくれてありがとう。ノクトゥ

4

1 に答える 1