5個(gè)Python使用F-String進(jìn)行格式化的實(shí)用技巧分享
F-String
(格式化字符串字面值)是在Python 3.6中引入的,它是一種非常強(qiáng)大且靈活的字符串格式化方法。
它允許你在字符串中嵌入表達(dá)式,這些表達(dá)式在運(yùn)行時(shí)會(huì)被求值并轉(zhuǎn)換為字符串,這種特性使得F-String
在編寫Python
代碼時(shí)能夠更簡(jiǎn)潔、更直觀地處理字符串。
本文總結(jié)了5個(gè)實(shí)用的F-String
技巧,相信一定能讓你的代碼輸出更加的美觀,清晰。
1. 大數(shù)字
在Python
的數(shù)據(jù)分析的項(xiàng)目中,經(jīng)常接觸到很大的數(shù)字,直接打印出大數(shù)字的話,很難看出它究竟有多少位。
n = 100000000 print(n) # 100000000
用F-String
來(lái)格式化,可以將大數(shù)字用千分位的形式顯示出來(lái)。
# 千分位的分隔符用 _ 或者 , 都可以 print(f"{n:_}") # 100_000_000 print(f"{n:,}") # 100,000,000
2. 浮點(diǎn)數(shù)
對(duì)于浮點(diǎn)數(shù),除了可以用千分位分隔之外,還可以指定顯示幾位小數(shù)。
n = 1234.5678 print(f"{n:.2f}") # 1234.57 print(f"{n:.0f}") # 1235 print(f"{n:,.3f}") # 1,234.568 print(f"{n:_.3f}") # 1_234.568
顯示前會(huì)自動(dòng)做四舍五入的計(jì)算。
3. 對(duì)齊
對(duì)齊不僅是讓輸出更加美觀,更重要的是清晰,能夠讓我們更容易找到輸出中的關(guān)鍵的信息。
比如,下面對(duì)齊輸出name
和value
。
name = "var" value = 100 # >20 表示右對(duì)齊,并且占用20個(gè)字符的空間 print(f"{name:>20}: {value}") # <20 表示左對(duì)齊,并且占用20個(gè)字符的空間 print(f"{name:<20}: {value}") # ^20 表示居中對(duì)齊,并且占用20個(gè)字符的空間 print(f"{name:^20}: {value}")
# 運(yùn)行結(jié)果 var: 100 var : 100 var : 10
占用的20
個(gè)字符的空間,包括var
這個(gè)字符串,也就是說(shuō),占用的空間包含var
和17
個(gè)空格。
F-String
格式化輸出時(shí),默認(rèn)是用空格來(lái)占位的,我們也可以定義自己的占位符。
# 下面的例子分別用 _ # | 來(lái)占位 print(f"{name:_>20}: {value}") print(f"{name:#<20}: {value}") print(f"{name:|^20}: {value}")
# 運(yùn)行結(jié)果 _________________var: 100 var#################: 100 ||||||||var|||||||||: 100
4. 日期
日期的格式化也是很常用的,python的日期格式化字符都可以在F-String
中使用。
from datetime import datetime now = datetime.now() print(f"{now:%Y-%m-%d (%H:%M:%S)}") # 2024-03-12 (00:17:05) print(f"{now:%c}") # Tue Mar 12 00:17:05 2024 print(f"{now:%I%p}") # 12AM
5. 變量描述
最后這個(gè)功能很有用,但估計(jì)沒(méi)多少人知道。
所謂變量描述,也就是說(shuō)在輸出變量的時(shí)候,不僅輸出變量的值,也輸出變量的名字。
比如,一般我們輸出變量是這樣:
a = 10 b = 20 s = "hello" print(f"{a + b}") # 30 print(f"{s}") # hello
這樣輸出之后,我們不知道30
和hello
是哪個(gè)變量的值。
所以,我們一般會(huì)像下面這樣輸出:
print(f"a + b = {a + b}") # a + b = 30 print(f"s = {s}") # s = hello
F-String
有個(gè)技巧,可以避免自己手動(dòng)去輸入變量的名字(比如上面的a + b =
和 s =
)。
print(f"{a + b = }") # a + b = 30 print(f"{s = }") # s = hello
這樣不僅簡(jiǎn)化的寫代碼,而且變量名稱發(fā)生變化的時(shí)候,也可以減少修改的地方。
到此這篇關(guān)于5個(gè)Python使用F-String進(jìn)行格式化的實(shí)用技巧分享的文章就介紹到這了,更多相關(guān)Python F-String格式化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python網(wǎng)絡(luò)請(qǐng)求模塊urllib與requests使用介紹
網(wǎng)絡(luò)爬蟲(chóng)的第一步就是根據(jù)URL,獲取網(wǎng)頁(yè)的HTML信息。在Python3中,可以使用urllib和requests進(jìn)行網(wǎng)頁(yè)數(shù)據(jù)獲取,這篇文章主要介紹了Python網(wǎng)絡(luò)請(qǐng)求模塊urllib與requests使用2022-10-10Django框架設(shè)置cookies與獲取cookies操作詳解
這篇文章主要介紹了Django框架設(shè)置cookies與獲取cookies操作,結(jié)合實(shí)例形式詳細(xì)分析了Django框架針對(duì)cookie操作的各種常見(jiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下2019-05-05Python qrcode 生成一個(gè)二維碼的實(shí)例詳解
在本篇文章里小編給大家整理的是關(guān)于Python qrcode 生成一個(gè)二維碼的實(shí)例內(nèi)容,需要的朋友們可以學(xué)習(xí)參考下。2020-02-02在Python中執(zhí)行和調(diào)用JavaScript的多種方法小結(jié)
JavaScript(JS)是一種常用的腳本語(yǔ)言,通常用于網(wǎng)頁(yè)開(kāi)發(fā),但有時(shí)也需要在Python中執(zhí)行或調(diào)用JavaScript代碼,本文將詳細(xì)介紹Python中執(zhí)行和調(diào)用JavaScript的多種方法,每種方法都將附有示例代碼,方便理解如何在Python中與JavaScript進(jìn)行互動(dòng),需要的朋友可以參考下2023-11-11Django實(shí)現(xiàn)基于類的分頁(yè)功能
這篇文章主要為大家詳細(xì)介紹了Django實(shí)現(xiàn)基于類的分頁(yè)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10Django序列化中SerializerMethodField的使用詳解
這篇文章主要介紹了Django序列化中SerializerMethodField的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03python中的正則表達(dá)式,貪婪匹配與非貪婪匹配方式
這篇文章主要介紹了python中的正則表達(dá)式,貪婪匹配與非貪婪匹配方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01