0
argument_list = ['name=Jon', 'id=100' ]

output = subprocess.check_output(
         ['/usr/bin/python', 'test.py', argument_list ], stderr=subprocess.STDOUT)

簡単に言えば、test.py というサブプロセスを使用してスクリプトを呼び出そうとしています。リストを介して引数を test.py に渡したい。重要 - リストは任意のサイズにすることができます。

私が試したこと、

output = subprocess.check_output(
         ['/usr/bin/python', 'test.py', ", ".join(argument_list) ], stderr=subprocess.STDOUT)

output = subprocess.check_output(
         ['/usr/bin/python', 'test.py', '%s' % argument_list ], stderr=subprocess.STDOUT)

subprocess.checkoutput は (' ', ' ' ,' ') などである必要があるため、どちらも機能しません。

これを行うより良い方法はありますか?

4

1 に答える 1

3

リストを一緒に追加して、新しいリストを作成できます。

output = subprocess.check_output(['/usr/bin/python', 'test.py'] + argument_list, stderr=subprocess.STDOUT)

これは、コマンドライン パラメータとして実行test.pyされます。argument_list

于 2013-09-21T23:58:49.697 に答える