在 Python 中,f" "
語法表示 f-string,是一種用於格式化字串的方式。f 代表“格式化”(formatted),即它允許在字串中嵌入表示式或變數,並將其評估後嵌入到字串中。
這種語法在 Python 3.6 及以後版本中被引入,是一種非常簡潔且高效的字串格式化方法。
1. 基本用法
在 f-string 中,你可以直接在字串中使用花括號 {}
來包含變數或表示式,並且這些表示式會在字串建立時自動被求值並替換為對應的值。
比如
name = "Alice"
age = 30
greeting = f"Hello, my name is {name} and I am {age} years old."
print(greeting)
輸出如下:
在上面的例子中,f" "
字串中嵌入了 name 和 age 變數,它們會被替換成對應的值。
2. 表示式支援
f-string
不僅支援變數,還支援任何有效的 Python 表示式。例如,你可以在花括號內進行計算、呼叫函式、訪問屬性等。
比如
a = 5
b = 10
result = f"The sum of {a} and {b} is {a + b}."
print(result)
輸出如下:
在這個例子中,a + b 被直接嵌入到 f-string 中,計算結果 15 會在字串中顯示。
3. 格式化數字
f-string 還允許你使用格式化程式碼來控制如何顯示數值。例如,可以設定浮點數的小數位數、整數的對齊方式等。
比如
pi = 3.141592653589793
formatted_pi = f"Pi to 3 decimal places is {pi:.3f}."
print(formatted_pi)
輸出如下:
在這個例子中,{pi:.3f}
表示將 pi 格式化為保留三位小數的浮點數。
關於設定整數對齊方式的相關內容,可以看下這篇部落格python如何設定整數對齊方式
4. 多行 f-string
f-string 也支援多行字串,可以使用三引號 f""" """
或 f''' '''
來建立多行格式化字串。
比如
name = "Alice"
age = 30
message = f"""
Name: {name}
Age: {age}
"""
print(message)
輸出如下:
5. 效能
f-string 的優點之一是效能比傳統的格式化方法(如 % 格式化
和 str.format()
)更高效。
6. 總結
-
f-string 是一種在 Python 中用於字串格式化的簡潔方式。
-
使用
f" "
字首,可以在字串中直接嵌入變數和表示式。 -
它可以提高程式碼的可讀性和效能,是推薦的格式化方式。
-
f-string 支援複雜的表示式和格式化選項,使得字串格式化更加靈活和強大。