0

既存のプログラムを開発中の Python 2.7 スクリプトに統合しようとしています。現在、コマンド プロンプトで次のように入力すると、プログラムを正常に実行できます。

     `C:\wisdem\plugins\JacketSE\src\jacketse\SubDyn\bin\SubDyn_Win32.exe C:\wisdem\plugins\JacketSE\src\jacketse\SubDyn\CertTest\Test04_TrialD3.txt`

これはすべて 1 行です。.txt ファイルには、.exe ファイルに必要な入力が含まれています。私は両方os.system("C:\wisdem\plugins\...)を使用してみました

subprocess.Popen("C:\wisdem\plugins\...", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE).stdout.read()

これを行うには、どちらも機能していません。また、コマンド プロンプトの出力を Python で出力する必要があります。どんな助けでも大歓迎です!

4

1 に答える 1

0
import os
print os.popen(r'''echo "hello"''').read()

コマンド全体を三重引用符で囲んで試してみることをお勧めします。これにより、コマンドが実行され、出力が出力されます。

プレフィックス付きの文字列リテラルを使用するrと、発生している奇妙なエスケープ文字の問題に役立ちます。

上記のコードを使用する場合、および os.popen がバージョン 2.6 以降非推奨になっている場合と同様に、セキュリティ上の懸念があることに注意してください。ただし、2.7 の簡単なローカル スクリプトの場合は、上記で十分です。

于 2016-07-14T21:33:21.373 に答える