首頁 >後端開發 >Python教學 >如何使用 Python 的「subprocess.communicate()」即時傳輸子程序輸出?

如何使用 Python 的「subprocess.communicate()」即時傳輸子程序輸出?

Patricia Arquette
Patricia Arquette原創
2025-01-01 00:30:19839瀏覽

How to Stream Subprocess Output in Real-time using Python's `subprocess.communicate()`?

從subprocess.communicate() 串流輸出

在Python 中,使用subprocess.communicate() 從執行的程序讀取時間過長可能會出現問題。結果輸出會一次接收,從而阻礙即時顯示。

為了克服這個問題,可以列印產生的標準輸出的每一行,同時仍確保進程在繼續之前終止:

Python 2

Python 3

這種修改後的方法在寫入行時連續讀取行,繞過緩衝區延遲。該進程仍然保留其阻塞行為,停止執行直到終止。

以上是如何使用 Python 的「subprocess.communicate()」即時傳輸子程序輸出?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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