我運行一個簡單的Python腳本是這樣的:subprocess.check_output顯然沒有捕捉輸出
C:\workspace\MetaPackager\src\metapackager_tests\fake_project\src>c:\workspace\MetaPackager\Scripts\python.exe -c "print 'hello world'"
hello world
當我嘗試從subprocess.check_poutput中運行同樣的事情,我得到什麼:
C:\workspace\MetaPackager\src\metapackager_tests\fake_project\src>c:\workspace\MetaPackager\Scripts\python.exe
Python 2.7.6 (default, Nov 10 2013, 19:24:18) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import subprocess
>>> import sys
>>> args = [sys.executable, '-c', '"print(\'hello world\')"']
>>> subprocess.check_output(args).strip()
''
這也產生完全相同的故障類型:
subprocess.check_output(args, stderr=subprocess.STDOUT,).strip()
''
任何人能看到什麼migh不會出錯?
這是32位的Python 2.7在Windows 7
嘗試:'ARGS = [sys.executable, '-c', '打印(\' 你好世界\ ')']'或'簡單ARGS = [sys.executable,'-c','print(「hello world」)']' - 都適用於我。 – jedwards 2014-09-26 12:12:36