【Python自學】格式化字串f-string的用法

這篇整理 Python 的 f-string,也就是格式化字串。它可以讓我們很方便地把變數放進字串裡,讓輸出文字更簡潔、更好讀。

📘 f-string:Python 格式化字串

f-string 是 Python 中很常用的字串格式化寫法。

簡單來說,只要在字串前面加上一個 f,就代表這是一個可以插入變數的字串。

name = "阿元" print(f"你好,我是{name}")

執行結果:

你好,我是阿元

🧭 f-string 的用途

f 放在字串前面,代表這是一個可插入變數的字串。

只要在字串中使用 {變數名稱},Python 就會自動把變數的內容放進字串裡。

基本格式

f"文字內容{變數名稱}文字內容"

簡單範例

name = "阿元" age = 25 print(f"我是{name},今年{age}歲")

執行結果:

我是阿元,今年25歲
f-string 的核心概念:把變數放進大括號 {} 裡,Python 會自動替你填入變數內容。

🛒 為什麼需要 f-string?

先寫一段購物計算的例子。

假設使用者輸入商品名稱、價格與數量,程式計算總金額後,把結果印出來。

使用 f-string 的寫法

item = input("你要買什麼?") price = float(input("價格是多少?")) quantity = float(input("總共要買幾個?")) total = price * quantity print(f"購買了{quantity}個{item}總共需要{total}元")

程式執行範例

你要買什麼?蘋果 價格是多少?30 總共要買幾個?5 購買了5.0個蘋果總共需要150.0元

這樣的寫法很直覺,只要把想插入的變數放進 {} 裡就可以。

🔁 如果不用 f-string 會怎樣?

如果不用 f-string,就需要用字串串接的方式來寫。

print("購買了" + str(quantity) + "個" + item + "總共需要" + str(total) + "元")

這樣不只比較長,也比較難讀。

而且只要變數不是字串,例如 quantitytotal 是數字,就必須先用 str() 轉成字串才能串接。

使用 + 串接字串時,如果把數字直接和字串相加,可能會出現型別錯誤。
所以常常需要先寫 str(quantity)str(total)

📋 f-string 與傳統字串串接比較

以下用表格比較兩種寫法的差異。

寫法 範例 特色
f-string f"總共{total}元" 簡潔、好讀、可直接放變數。
字串串接 "總共" + str(total) + "元" 較長,數字要先轉成字串。
使用 f-string 只要用 {} 把變數放進文字裡即可,不需要每個變數都手動轉成字串,寫起來既簡潔又清楚。

🔢 補充:用 f-string 控制小數位數

如果購物金額出現很多小數位,可以用 f-string 控制顯示格式。

item = "蘋果" price = 30 quantity = 5 total = price * quantity print(f"購買了{quantity}個{item}總共需要{total:.2f}元")

執行結果:

購買了5個蘋果總共需要150.00元

其中 {total:.2f} 的意思是:把 total 顯示成小數點後 2 位。

{變數:.2f}

常用在金額、成績、平均值等需要固定小數位數的情境。

🧪 再看一個完整範例

下面是一個更完整一點的購物輸出範例。

item = input("你要買什麼?") price = float(input("價格是多少?")) quantity = int(input("總共要買幾個?")) total = price * quantity print(f"商品:{item}") print(f"單價:{price:.2f} 元") print(f"數量:{quantity}") print(f"總金額:{total:.2f} 元")

程式執行範例

你要買什麼?香蕉 價格是多少?12.5 總共要買幾個?6 商品:香蕉 單價:12.50 元 數量:6 總金額:75.00 元

這種寫法很適合用在需要清楚輸出資料的情境。

✅ 小結

f-string 是 Python 中非常實用的格式化字串寫法,尤其適合把變數放進輸出文字中。

  • 字串前面加 f:代表這是一個 f-string。
  • 使用大括號:{變數名稱} 可以插入變數內容。
  • 比字串串接更好讀:不用一直寫 +str()
  • 可以控制格式:例如 {total:.2f} 可顯示小數點後 2 位。
  • 適合輸出結果:例如購物金額、使用者資訊、計算結果。
f"文字{變數}文字" 例如: f"購買了{quantity}個{item}總共需要{total}元"
最後用一句話記住:
f-string 就是讓變數自然地住進字串裡。

留言

這個網誌中的熱門文章

麻將新手必看!不知道聽什麼牌怎麼辦?超多種實戰聽牌範例,教你怎麼判斷胡牌機會

麻將教學懶人包|從規則到牌理的完整觀念整理(附實戰心得)

【新訓入伍】義務役新兵必看!入伍報到必備清單整理|2026年更新