首頁 > 後端開發 > Python教學 > 如何將 Python 的列印輸出重新導向到檔案以及為什麼會失敗?

如何將 Python 的列印輸出重新導向到檔案以及為什麼會失敗?

Barbara Streisand
發布: 2024-11-28 21:28:12
原創
441 人瀏覽過

How Can I Redirect Python's Print Output to a File and Why Might It Fail?

Python 程式碼的輸出重新導向

查詢的中心是使用 Python 將列印語句重新導向到指定的文字檔案。儘管採用了 sys.stdout 技術,目標檔案仍然為空。本文旨在探討此問題並提供替代解決方案。

利用檔案物件進行輸出

最直接的方法是直接寫入檔案物件:

with open('out.txt', 'w') as f:
    print('Filename:', filename, file=f)  # Python 3.x
    # print >> f, 'Filename:', filename   # Python 2.x
登入後複製

重定向標準輸出

或者,可以使用以下程式碼實現標準輸出重定向:

import sys

orig_stdout = sys.stdout
f = open('out.txt', 'w')
sys.stdout = f

for i in range(2):
    print('i = ', i)

sys.stdout = orig_stdout
f.close()
登入後複製

使用標準庫上下文管理器

對於Python 3.4及以上版本,專用的上下文管理器可以簡化此操作程序:

from contextlib import redirect_stdout

with open('out.txt', 'w') as f:
    with redirect_stdout(f):
        print('data')
登入後複製

外部輸出重新導向

透過 shell將輸出重新導向到外部是另一個可行的選項:

./script.py > out.txt
登入後複製

其他注意事項

  • 使用glob.glob 來驗證指定路徑內bamfile 的可用性。
  • 利用 os.path.join 和 os.path.basename 獲得高效率的路徑和檔案名稱操縱。

以上是如何將 Python 的列印輸出重新導向到檔案以及為什麼會失敗?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板