工作時,會希望使用統一的列印模闆來處理散落在各處的列印需求,尤其是在記錄日志時,如果直接使用
print
函數,那麼代碼會顯得尤其繁瑣。這時,比較好的做法是編寫一個函數來進行封裝。而Python的
string.Formatter
類提供了字元串格式化功能。制作字元串模闆後,通過調用
format(value[, format_spec])
方法,就可以依照模闆生成一個格式化的字元串,而這個字元串再結合
print
等函數,可以在很多地方得到應用。
下面看一個示例:
import datetime
# 設計字元串模闆
template = ('\nDate: "{}", Temperature: {:.1f}, Condition: "{}"')
# 根據字元串模闆生成字元串
log = template.format(datetime.datetime.now(), 23.17, 'good')
# 列印格式化後的字元串
print(log)
簡單的三個步驟完成任務:
- 根據實際需求設計一個字元串模闆,也就是代碼中的
,其中,template
是占位符,在占位符裡可以引入各種格式化選項,如{}
等等。1f
- 在系統運作過程中,将實時資料按模闆指定的格式組合成新的字元串。
- 應用該字元串,例如使用
函數進行列印。print
通過上述簡單的過程,便可以優雅地完成格式化字元串的功能,并和其應用過程(例如
print
)進行解耦。