Popen.communicate()に問題があります。Popen.communicate()は、スクリプトの出力結果があっても(None、None)を返します。
文字列を返すスクリプトがあります。
次に、その変数を使用する2番目のスクリプトを書きました。
v = "./myscript arg1 arg2"
com = subprocess.Popen(v, shell=True).communicate()
print com
comは(なし、なし)を返します。ポイントは、最初のスクリプト内で結果をプリントすることができるということです。 シェルプリント結果も同様です。私はそのプリントを変数に割り当てることはできません。
もちろん、最初のスクリプトは値を返し、印刷しません。 docsから
'myscript'からの結果をPythonスクリプトに伝えるために標準出力を使うつもりなら、' myscript'を実際にSTDOUTに印刷する必要はありませんか? – rchang
それは解決策でした。 –