前言
在 Python 中,字串格式化是一種常見且重要的操作,用於將變數或值插入到字串中,並控制輸出的格式。本文將介紹幾種常見的字串格式化方法,幫助大家掌握在 Python 中有效地處理字串的技巧。
方法一:使用 % 運算子格式化字串
使用 %
運算子是一種傳統的字串格式化方法,可以透過將變數插入到字串中來建立格式化的字串。
格式符為真實值預留位置,並控制顯示的格式。格式符可以包含有一個型別碼,用以控制顯示的型別,如下:
- %s 字串 (採用str()的顯示)
- %r 字串 (採用repr()的顯示)
- %c 單個字元
- %b 二進位制整數
- %d 十進位制整數
- %i 十進位制整數
- %o 八進位制整數
- %x 十六進位制整數
- %e 指數 (基底寫為e)
- %E 指數 (基底寫為E)
- %f 浮點數
- %F 浮點數,與上相同
- %g 指數(e)或浮點數 (根據顯示長度)
- %G 指數(E)或浮點數 (根據顯示長度)
- %% 字元"%",顯示百分號%
示例如下:
name = "Alice"
age = 30
formatted_string = "Hello, %s! You are %d years old." % (name, age)
print(formatted_string)
-----------
輸出結果:
Hello, Alice! You are 30 years old.
在上面的示例中,%s
和 %d
是佔位符,分別用來表示字串和整數型別。透過將變數傳遞給 %
運算子右側的元組,可以將變數的值插入到字串中。
方法二:使用 str.format() 方法
str.format()
方法是一種更靈活和強大的字串格式化方法,可以根據需要指定插入變數的位置,並進行更復雜的格式化。
name = "Bob"
age = 25
formatted_string = "Hello, {}! You are {} years old.".format(name, age)
print(formatted_string)
----------------
輸出結果:
Hello, Bob! You are 25 years old.
在上面的示例中,{}
是佔位符,用來表示變數的插入位置。透過在format()
方法中傳遞變數,可以按照順序將它們插入到字串中。
方法三:使用 f-strings(格式化字串字面值)
自從 Python 3.6 版本開始,引入了 f-strings,它是一種直觀且易用的字串格式化方法,可以在字串前加上 f
或 F
來建立格式化字串。
name = "Charlie"
age = 35
formatted_string = f"Hello, {name}! You are {age} years old."
print(formatted_string)
---------
結果如下:
Hello, Charlie! You are 35 years old.
在上面的示例中,透過在字串前加上 f
,可以直接在 {}
中使用變數,使得字串的格式化更加清晰和簡潔。
高階用法:格式化控制
除了簡單的插入變數外,字串格式化還支援更多的格式化控制,如指定數字的小數位數、對齊方式等。
pi = 3.1415926
formatted_string = f"Value of pi: {pi:.2f}"
print(formatted_string)
------------------
輸出結果:
Value of pi: 3.14
在上面的示例中,:.2f
指定了浮點數 pi
的格式,保留小數點後兩位。
總結
本文介紹了在 Python 中常用的字串格式化方法,包括 %
運算子、tr.format()
方法和 f-strings
。這些方法都可以幫助我們根據需要將變數插入到字串中,並控制輸出的格式。根據實際情況和個人偏好,選擇合適的字串格式化方法,以提高程式碼的可讀性和靈活性。