我正在閱讀關於子過程並玩弄一些代碼。 我使用Windows 7 Python3.6爲什麼在這種情況下stdout輸出空字符串?
import subprocess
process = subprocess.Popen(['notepad', 'C:\\Users\Amit\Downloads\InsiderTrades.txt'],stdout=subprocess.PIPE, stderr=subprocess.PIPE)
#I'm opening a text file which has a list of stock tickers
stdout1, stderr1 = process.communicate()
print(stdout1.decode('ASCII'))
我得到的輸出是什麼或者
b''
作爲stdout1值。
我「不十分清楚什麼communicate
在這種情況下輸出。 我的印象是,它將輸出從我的文本文件中的文本或將它輸出任何東西我輸入到文本文件下。
我試着輸入到新打開的文本文件爲好,但我仍然得到同樣的輸出,b''
那麼我得到一個空字符串,儘管輸入的東西到新開的文本文件。
如果您在cmd控制檯中鍵入該命令,它將打開記事本並不打印任何內容。這裏也是一樣。 –
不清楚你期望做什麼,但記事本並不真正接受來自標準輸入的輸入,也不輸出到標準輸出。這是一個GUI程序。 – pvg