[Python][微進階]格式化字串f-string

更新於 2024/03/12閱讀時間約 5 分鐘

在Python中使用f-string(f字串)時,你可以更方便地格式化字串,這是從Python 3.6版本開始引入的新特性。

至從有f-string後,基本上我個人就沒在用.format了。

以下是f-string的基本用法:

它使用在字串前加上 'f' 或 'F' 的前綴,並且在字串中使用大括號 {} 包含變數表達式


基本用法:

在這個例子中,{name}{age}是表達式,它們會被替換為相應變數的值。

name = "Alice"
age = 30
print(f"我的名字是{name},我今年{age}歲。")

輸出:我的名字是Alice,我今年30歲

表達式和運算符:

可以在表達式中執行運算。

x = 5
y = 10
print(f"{x}{y}的和是{x + y}。")

輸出:5和10的和是15

格式化控制:

在這裡,:.2f表示浮點數要顯示兩位小數。

pi = 3.14159
print(f"圓周率的值為:{pi:.2f}")

輸出:圓周率的值為:3.14

使用字典和列表:

person = {"name": "Crab", "age": 18}
print(f"我的名字是{person['name']},我今年{person['age']}歲。")

輸出:我的名字是Crab,我今年18歲。

調用方法和函數:

使用 f-string 中的 {greeting.capitalize()} 時,實際上是在呼叫字符串(string)對象的 capitalize() 方法。

這裡的 greeting 是一個字符串變數,而 .capitalize() 是一個字符串對象方法

這個方法的作用是將字符串的第一個字符轉換為大寫,並保持其餘字符為小寫。

  1. greeting 變數包含字符串 "crab"。
  2. greeting.capitalize() 將 "crab" 中的 "c" 轉換為大寫,而 "rab" 保持小寫,因此結果是 "crab" 變為 "Crab"。
greeting = "crab"
print(f"{greeting.capitalize()} 好帥!")

輸出:Crab好帥!


在 f-string 中,你不使用 % 符號,而是使用 : 符號進行格式化。

以下是一些常見的 % 符號在 f-string 中對應的 : 符號的應用:

浮點數格式化:

控制浮點數的顯示方式,包括小數點位數,.2f代表小數點後兩位

pi = 3.1415926535
print(f"{pi:.2f}")

輸出:3.14

整數格式化:

控制整數的顯示方式。變數age後面加:d

但感覺沒什麼機會用到

age = 25
print(f"Age: {age:d}")

輸出:Age:25

對齊數字:

使用 :<, :>:^ 控制數字的對齊方式,使輸出更易讀。

number = 42
print(f"Number: {number:<5}") # 左對齊
print(f"Number: {number:>5}") # 右對齊
print(f"Number: {number:^5}") # 居中對齊

輸出:

Number: 42

Number: 42

Number: 42

填充數字:

使用填充字符,例如 0,來填充數字。

number = 7
print(f"Number: {number:03}") # 填充為三位數,不足補零

輸出: Number: 007

千位分隔符號:

使大數字更易讀,通常使用逗號 , 來區分千位。

large_number = 1234567890
print(f"千份位符號表示{large_number:,}")

輸出: 千份位符號表示1,234,567,890

其他進制表示:

使用 :x 顯示十六進位、:o 顯示八進位等。

number = 255
print(f"顯示十六進位 : {number:x}")
print(f"顯示八進位 : {number:o}")

輸出:

顯示十六進位 : ff

顯示八進位 : 377

條件顯示:

根據條件顯示不同格式的整數。

:+:- 是用來顯示正負號的格式選項。

:+ 表示顯示正數時帶有正號,負數帶有負號:

number = 42
print(f"正數: {number:+}") # 正數帶有正號

輸出:正數: +42

:- 表示顯示正數時不帶正號,負數仍帶有負號:

number = -42
print(f"負數: {number:-}") # 正數不帶正號

輸出:負數: -42

整數格式化提供了一種更靈活的方式,使你能夠控制整數在輸出時的外觀,以滿足不同情境的需求。


是不是相比.format()或者跟以前%格式化的用法,f-srting好用多了呢




avatar-img
128會員
209內容數
本業是影像辨識軟體開發,閒暇時間進修AI相關內容,將學習到的內容寫成文章分享。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
螃蟹_crab的沙龍 的其他內容
NumPy 提供了一種 N 維數組類型 ndarray(N-dimensional array) ,它描述了相同類型的「數據類型」的集合。 多維數組: ndarray 是一個 N 維數組,其中 N 可以是任意整數。一維數組是向量,二維數組是矩陣
NumPy在圖像處理、機器學習、數學和統計學等領域中被廣泛應用。 以下是一些常見的應用場景: 數據處理和分析: NumPy提供了高效的多維數組(nd array)和相應的操作函數,使得對大型數據集進行快速、有效的操作變得容易。
在程式開發中,協作合作專案時,利用type hint,可以快速知道函式輸入及輸出的資料型別,在後續的維護時也會更加方便及可讀。 Type hints 是Python 3.5 版本引入的功能,它允許在函數宣告中指定參數和傳回值的類型。Type hints 是一種可選的註解形式,不會影響程式碼的運行,
在現實生活中,充滿的警報及安全措施,總會設個安全線在那,若觸碰到底線時則會有警報響起。 在Python也有類似的作法,如果希望在某個條件達到時,就拉起警報不要讓程式繼續進行下去,就適合使用raise 這種機制讓開發者能夠在程序執行時檢測到不正確的條件,然後通過引發異常停止程序的執行或通知使用者。
在實務上,條碼槍傳送的資訊可能包含不可見字符或控制字符。這可能是因為條碼槍在傳送條碼數據時使用了一些特殊字符,這些字符在可見字符集合之外,例如 \x06 就是 ASCII 中的 "ACK" 控制字符。 本文將探討,如何查詢及處理這些特殊字符。
Python 提供了一系列內建函式,其中一部分涉及數學和數學操作。 以下是一些常用的內建函式和數學相關的函式: 基本數學運算: abs(x): 返回 x 的絕對值。 result = abs(-5) print(result) # 輸出: 5 max(iterable) 和 min(
NumPy 提供了一種 N 維數組類型 ndarray(N-dimensional array) ,它描述了相同類型的「數據類型」的集合。 多維數組: ndarray 是一個 N 維數組,其中 N 可以是任意整數。一維數組是向量,二維數組是矩陣
NumPy在圖像處理、機器學習、數學和統計學等領域中被廣泛應用。 以下是一些常見的應用場景: 數據處理和分析: NumPy提供了高效的多維數組(nd array)和相應的操作函數,使得對大型數據集進行快速、有效的操作變得容易。
在程式開發中,協作合作專案時,利用type hint,可以快速知道函式輸入及輸出的資料型別,在後續的維護時也會更加方便及可讀。 Type hints 是Python 3.5 版本引入的功能,它允許在函數宣告中指定參數和傳回值的類型。Type hints 是一種可選的註解形式,不會影響程式碼的運行,
在現實生活中,充滿的警報及安全措施,總會設個安全線在那,若觸碰到底線時則會有警報響起。 在Python也有類似的作法,如果希望在某個條件達到時,就拉起警報不要讓程式繼續進行下去,就適合使用raise 這種機制讓開發者能夠在程序執行時檢測到不正確的條件,然後通過引發異常停止程序的執行或通知使用者。
在實務上,條碼槍傳送的資訊可能包含不可見字符或控制字符。這可能是因為條碼槍在傳送條碼數據時使用了一些特殊字符,這些字符在可見字符集合之外,例如 \x06 就是 ASCII 中的 "ACK" 控制字符。 本文將探討,如何查詢及處理這些特殊字符。
Python 提供了一系列內建函式,其中一部分涉及數學和數學操作。 以下是一些常用的內建函式和數學相關的函式: 基本數學運算: abs(x): 返回 x 的絕對值。 result = abs(-5) print(result) # 輸出: 5 max(iterable) 和 min(
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
EasyOCR是一個能夠幫助你對圖片中的文字進行辨識的工具,透過進階分析,可以應用在文件掃描、自動化數據輸入、發票掃描等領域。本章節將介紹如何安裝、引用模型、進行文字辨識、以及辨識結果的分析。透過學習,你可以建立屬於自己的文字辨識系統。
Thumbnail
歡迎回到我的學習筆記,今天我想分享一下在python中幾個反轉字串的作法,反轉字串的意思就像是將文字從「我愛你」變成「你愛我」。 談到反轉字串時,有幾種不同的方法,寫法如下: 以下反轉字串是寫成函式的樣子 1. 使用迴圈: 這是一個傳統的方法,使用迴圈來反轉字串。
Thumbnail
在Python中,有一種很方便的方式來格式化字串,就是使用f-string 或format()函式。f-string是一種字串前面加上f,可以在字串中使用大括號{}來插入變數或表達式。format()是另一種方法,可以在字串後面加上.format(),並在括號中傳入參數,來替換字串中的大括
Thumbnail
我們將探索函式的定義和調用,這是程式設計中非常重要且強大的概念,它可以將大型程式切割成小的、可重複使用的函式。讓我們一起來了解吧!函式的定義、呼叫和返回值是學習函式的核心。
Thumbnail
探索Python學習筆記中列表的建立、存取和常用方法。從使用中括號定義列表到了解索引、新增、刪除、修改等操作,並介紹append、remove、count等常用方法。
在Python中,join()和split()是用於處理字串的切割與組合的方法。
Thumbnail
第一個實戰,我們就先從如何連接自己的網站開始,當我們輸入「部落格」時,機器人就會輸出一個表格,只要點選「馬上觀看」,我們就可以直接連接到自己的部落格,此功能其實也可以運用在連接粉專或是其他想要觀看的網站唷!! Flex Message 實際製作教學 選擇模板 更改圖片 修改內容物 修改底部box
Thumbnail
常常會遇到好不容易寫好程式,但是輸出的時候沒辦法按照自己想要的格式,或是間隔來輸出,這時需要用到的就是格式化輸出,格式化輸出就是調整排版的一個形式。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
EasyOCR是一個能夠幫助你對圖片中的文字進行辨識的工具,透過進階分析,可以應用在文件掃描、自動化數據輸入、發票掃描等領域。本章節將介紹如何安裝、引用模型、進行文字辨識、以及辨識結果的分析。透過學習,你可以建立屬於自己的文字辨識系統。
Thumbnail
歡迎回到我的學習筆記,今天我想分享一下在python中幾個反轉字串的作法,反轉字串的意思就像是將文字從「我愛你」變成「你愛我」。 談到反轉字串時,有幾種不同的方法,寫法如下: 以下反轉字串是寫成函式的樣子 1. 使用迴圈: 這是一個傳統的方法,使用迴圈來反轉字串。
Thumbnail
在Python中,有一種很方便的方式來格式化字串,就是使用f-string 或format()函式。f-string是一種字串前面加上f,可以在字串中使用大括號{}來插入變數或表達式。format()是另一種方法,可以在字串後面加上.format(),並在括號中傳入參數,來替換字串中的大括
Thumbnail
我們將探索函式的定義和調用,這是程式設計中非常重要且強大的概念,它可以將大型程式切割成小的、可重複使用的函式。讓我們一起來了解吧!函式的定義、呼叫和返回值是學習函式的核心。
Thumbnail
探索Python學習筆記中列表的建立、存取和常用方法。從使用中括號定義列表到了解索引、新增、刪除、修改等操作,並介紹append、remove、count等常用方法。
在Python中,join()和split()是用於處理字串的切割與組合的方法。
Thumbnail
第一個實戰,我們就先從如何連接自己的網站開始,當我們輸入「部落格」時,機器人就會輸出一個表格,只要點選「馬上觀看」,我們就可以直接連接到自己的部落格,此功能其實也可以運用在連接粉專或是其他想要觀看的網站唷!! Flex Message 實際製作教學 選擇模板 更改圖片 修改內容物 修改底部box
Thumbnail
常常會遇到好不容易寫好程式,但是輸出的時候沒辦法按照自己想要的格式,或是間隔來輸出,這時需要用到的就是格式化輸出,格式化輸出就是調整排版的一個形式。