python3.6的字符串處理f-string的使用技巧分享
f-string的使用技巧
f-string填充
填充分為左填充、右填充、居中填充。
左填充表示在字符串左側(cè)填充,右填充表示在字符串右側(cè)填充,居中填充表示在字符串左右兩側(cè)對(duì)稱填充。
name = "鱷魚兒" print(f"{name:>20}") print(f"{name:<20}") print(f"{name:^20}") # 鱷魚兒 #鱷魚兒 # 鱷魚兒
>
表示左填充<
表示右填充^
表示居中填充。
記憶:括號(hào)口朝左邊,就表示左填充;括號(hào)口朝右邊,就表示右填充。
f-string保留小數(shù)位數(shù) f"{num:xxx}"
a = 123.456 # 只指定width print(f"{a:10}") #' 123.456' # 指定0width print(f"{a:010}") #'000123.456' # 使用width.precision print(f"{a:10.1f}") #' 123.5' print(f"{a:.2f}") #'123.46'
其中xxx
的格式如下
格式 | 說明 |
---|---|
width | 整數(shù)width指定寬度 |
0width | 整數(shù)width指定寬度,0表示最高位用0補(bǔ)足寬度 |
width.precision | 整數(shù)width指定寬度,整數(shù)precision表示精度(保留小數(shù)點(diǎn)后幾位小數(shù)) |
f-string進(jìn)制轉(zhuǎn)換
還可以用數(shù)字進(jìn)行進(jìn)制轉(zhuǎn)換,如:十六進(jìn)制轉(zhuǎn)換、二進(jìn)制轉(zhuǎn)換、八進(jìn)制轉(zhuǎn)換、科學(xué)計(jì)數(shù)法等
number = 15 # 十六進(jìn)制轉(zhuǎn)換 print(f"hex: {number:#0x}") # hex: 0xf # 二進(jìn)制轉(zhuǎn)換 print(f"binary: {number:b}") # binary: 1111 # 八進(jìn)制轉(zhuǎn)換 print(f"octal: {number:o}") # octal: 17 # 科學(xué)計(jì)數(shù)法 print(f"scientific: {number:e}") # scientific: 1.500000e+01
f-string千位符分隔符、百分比
千位符分隔符和百分比也可以很簡單的實(shí)現(xiàn)。
a = 1000000 print(f"{a= :,}") # a= 1,000,000 per = 0.59596 print(f"{per = :.2%}") # per = 59.60%
:.2%
即為設(shè)置保留 2 位小數(shù)并在字符串末尾添加一個(gè)百分號(hào),且會(huì)自動(dòng)根據(jù)保留小數(shù)位進(jìn)行四舍五入。
f-string調(diào)試模式 {variable = }
你仔細(xì)觀察下上面的例子,是不是發(fā)現(xiàn)語法書寫變化了,這種寫法就是f-string調(diào)試模式。
f-string 的調(diào)試功能是另一種書寫語法,即使用 {variable = }
代替 variable = {}
,如下面代碼所示。
a = 1 b = 2 print(f"a = {a}, b = ") # a = 1, b = 2 print(f"{a = }, {b = }") # a = 1, b = 2
可以看到使用調(diào)試模式減少了代碼量,同時(shí)輸出的內(nèi)容是一致的。由此可見調(diào)試模式可以節(jié)省大量時(shí)間和精力,使代碼看起來更整潔。
在 f-string 的調(diào)試模式中,還可以執(zhí)行數(shù)學(xué)運(yùn)算。
print(f"{a * b = }") # a * b = 2
f-string日期格式化
如果想格式化日期,可以創(chuàng)建一個(gè)示例日期時(shí)間值。就像在應(yīng)用程序中格式化日期一樣,可以在 f-string 中定義你想要的格式,例如:<date_format>
import datetime today = datetime.datetime.utcnow() print(f"datetime : {today}") # datetime : 2024-02-28 06:11:04.848944 print(f"date time: {today:%m/%d/%Y %H:%M:%S}") # 沒有微秒 # date time: 02/28/2024 06:11:04 print(f"date: {today:%m/%d/%Y}") # 僅日期 # date: 02/28/2024 print(f"time: {today:%H:%M:%S.%f}") # 僅時(shí)間 # time: 06:11:04.848944 print(f"time: {today:%H:%M:%S %p}") # 時(shí)間帶上上午/下午 # time: 06:11:04 AM print(f"time: {today:%H:%M}") # 24小時(shí)制時(shí)間 # time: 06:11 print(f"locale appropriate: {today:%c}") # 本地的適當(dāng)日期和時(shí)間表示法 # locale appropriate: Wed Feb 28 06:13:35 2024 print(f"weekday: {today:%A}") # 獲取當(dāng)前日期是星期幾 # weekday: Wednesday print(f"day of year: {today:%j}") # 獲取當(dāng)前日期是一年中的第幾天 # day of year: 059 day_of_year = f"{today:%j}" print(f"progress % year: {int(day_of_year)/365 * 100:.2f}%")# 獲取本年度已過去時(shí)間(百分比) # progress % year: 16.16%
以上就是python3.6的字符串處理f-string的使用技巧f分享的詳細(xì)內(nèi)容,更多關(guān)于python3.6 f-string使用技巧的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python實(shí)現(xiàn)word/excel/ppt批量轉(zhuǎn)pdf的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用python實(shí)現(xiàn)word、excel、ppt批量轉(zhuǎn)pdf文件,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考下2023-09-09Python中連接不同數(shù)據(jù)庫的方法總結(jié)
在數(shù)據(jù)驅(qū)動(dòng)的現(xiàn)代應(yīng)用開發(fā)中,Python憑借其豐富的庫和強(qiáng)大的生態(tài)系統(tǒng),成為連接各種數(shù)據(jù)庫的理想編程語言,下面我們就來看看如何使用Python實(shí)現(xiàn)連接常用的幾個(gè)數(shù)據(jù)庫吧2025-02-02ptyhon實(shí)現(xiàn)sitemap生成示例
這篇文章主要介紹了ptyhon實(shí)現(xiàn)sitemap生成示例,需要的朋友可以參考下2014-03-03多個(gè)版本的python共存時(shí)使用pip的正確做法
這篇文章主要介紹了多版本python共存時(shí)使用pip的正確做法,幫助有多個(gè)python版本需求的人可以正確的導(dǎo)包,感興趣的朋友可以了解下2020-10-10