如何在 Python 中列印到 stderr

Syed Moiz Haider 2023年1月30日 2020年11月24日
  1. 在 Python 2.x 中列印到 stderr
  2. 使用 logging 模組列印到 stderr
如何在 Python 中列印到 stderr

本教程解釋瞭如何在 Python 中寫入標準錯誤輸出,stderr。它還列出了一些示例程式碼,以解釋不同的方式來寫入 stderr,因為語法已經隨著時間的推移而改變。

在 Python 3.x 中列印到 stderr

對於 Python3.x,print 函式有一個關鍵字引數 file,指定列印目標。預設是 sys.stdout,但也可以是 sys.stderr,甚至是一個檔案路徑。

如果 file=sys.stderr,它就會將資訊列印到 stderr。下面給出一個示例程式碼。

import sys

print("Error", file = sys.stderr )

輸出:

Error

在 Python 2.x 中列印到 stderr

對於 Python2.x,print 語句可以將訊息列印到一個類似檔案的目標,如 stdoutstderr 或一個檔案路徑。這個類檔案物件是在 >> 後面指定的。見下面的例子。

import sys

print >> sys.stderr, "Error Detected!"

輸出:

Error Detected!

使用 sys.stderr 列印到 stderr

Python 的 sys 模組提供了有價值的資訊和關鍵函式。可以使用 sys.stderr.write() 方法。sys.stderr.write() 方法將訊息作為給定引數列印到 stderr 中。請看下面的例子。

import sys

sys.stderr.write("Error!")

輸出:

Error!

使用 logging 模組列印到 stderr

Python 中的 logging 模組是為了記錄訊息而專門建立的。日誌模組可以用來設定基本配置後列印到 stderrlogging.basicConfig()message 的格式作為輸入,logging.getLogger() 返回一個 logging 的物件。log.warning()warning 文字並列印到 stderr

基本示例如下所示:

import logging

logging.basicConfig(format = '%(messages)s')
log = logging.getLogger()

log.warning('Error Found!')

輸出:

Error Found!
Syed Moiz Haider avatar Syed Moiz Haider avatar

Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.

LinkedIn

相關文章 - Python Print