首頁 >後端開發 >Python教學 >如何將子進程輸出重新導向到 Python 中的檔案?

如何將子進程輸出重新導向到 Python 中的檔案?

Linda Hamilton
Linda Hamilton原創
2024-11-13 15:16:02757瀏覽

How can I redirect subprocess output to a file in Python?

使用Subprocess 在Python 中重定向輸出

在Python 中,使用subprocess 將輸出重定向到檔案可以透過呼叫subprocess 時呼叫的stdout 參數來完成.run().

考慮以下命令列命令:

cat file1 file2 file3 > myfile

此命令連接檔案“file1”、“file2”和“file3”的內容,並將輸出定向到檔案“myfile”。

在Python 中執行類似操作使用子流程,請按照以下步驟操作:

  1. 為子流程呼叫建立參數列表,包括命令(例如,['cat'])和輸入檔名。
  2. 以寫入模式開啟要將輸出重新導向的檔案(本例為「myfile」)。
  3. 使用參數清單呼叫 subprocess.run(),指定開啟的檔案句柄作為 stdout 參數。

範例程式碼 (Python 3.5 ):

import subprocess

# Create a list of input file names
input_files = ['file1', 'file2', 'file3']

# Create the command argument list
my_cmd = ['cat'] + input_files

# Open the output file in write mode
with open('myfile', "w") as outfile:
    # Run the subprocess and redirect its output to the file
    subprocess.run(my_cmd, stdout=outfile)

透過遵循此方法,您可以有效地將子程式的輸出重新導向到指定檔案。

以上是如何將子進程輸出重新導向到 Python 中的檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn