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ò)爬蟲的第一步就是根據(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-10
Django框架設(shè)置cookies與獲取cookies操作詳解
這篇文章主要介紹了Django框架設(shè)置cookies與獲取cookies操作,結(jié)合實(shí)例形式詳細(xì)分析了Django框架針對(duì)cookie操作的各種常見技巧與操作注意事項(xiàng),需要的朋友可以參考下2019-05-05
Python 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è)開發(fā),但有時(shí)也需要在Python中執(zhí)行或調(diào)用JavaScript代碼,本文將詳細(xì)介紹Python中執(zhí)行和調(diào)用JavaScript的多種方法,每種方法都將附有示例代碼,方便理解如何在Python中與JavaScript進(jìn)行互動(dòng),需要的朋友可以參考下2023-11-11
Django實(shí)現(xiàn)基于類的分頁(yè)功能
這篇文章主要為大家詳細(xì)介紹了Django實(shí)現(xiàn)基于類的分頁(yè)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10
Django序列化中SerializerMethodField的使用詳解
這篇文章主要介紹了Django序列化中SerializerMethodField的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03
python中的正則表達(dá)式,貪婪匹配與非貪婪匹配方式
這篇文章主要介紹了python中的正則表達(dá)式,貪婪匹配與非貪婪匹配方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01

