淺談Python中的字符串格式化輸出
今天小編就和大家來分享一下Python當(dāng)中的字符串格式化輸出,相信大多數(shù)人也對(duì)此有所耳聞,但是f-string的格式化輸出還是很多不為人所數(shù)值的一些特征,因此本篇文章也是希望借此機(jī)會(huì)來向大家一一說明。
時(shí)間與日期的輸出
f-string在形式上是以f或者F修飾符引領(lǐng)的字符串,(f'xxx'或者F'xxxx'),以大括號(hào){}標(biāo)明被替換的字段。首先,我們來看時(shí)間和日期的格式化輸出,代碼如下:
import datetime
today = datetime.datetime.today()
print(f"{today:%Y-%m-%d}")
output:
2022-05-04
或者是:
print(f"{today:%Y}")
output:
2022
而關(guān)于Python的時(shí)間日期的格式化符號(hào),其中%Y表示的是四位數(shù)的年份(000-9999),而%m表示的則是月份(01-12),%d表示的則是月內(nèi)中的一天(0-31),除此之外,還有表示時(shí)間的%H:%M:%S格式,其中%H表示的是24小時(shí)制的小時(shí)數(shù)(0-23),12小時(shí)制的則是%I,后面剩余的則是分鐘和秒數(shù),這里就不做過多的贅述。
打印浮點(diǎn)數(shù)更加多樣化
打印浮點(diǎn)數(shù)的時(shí)候,形式也可以是多種多樣的,我們可以指定小數(shù)點(diǎn)后面保留特定的位數(shù):
x, y = 10, 25
print(f"x={x:.3f}, y={y:.3f}")
output:
x=10.000, y=25.000
我們還可以給整數(shù)添加千分位的符號(hào),代碼如下:
number = 1234567890
print(f"{number: ,}")
output:
1,234,567,890
另外還可以在數(shù)字的最前面添加上貨幣符號(hào):
number = 254.3463
print(f"{f'${number:.3f}'}")
output:
$254.346
打印字符串時(shí)
當(dāng)f-string和字符串結(jié)合時(shí),可以與字符串的其他方法聯(lián)用,代碼如下:
name = 'ERIC'
print(f'My name is {name.lower()}')
output:
My name is eric
除了lower()方法之外,還有upper()方法、capitalize()方法、replace()方法、split()方法等等:
name = 'ERIC'
print(f'My name is {name.capitalize()}')
output:
My name is Eric
和Lambda函數(shù)的結(jié)合
最后f-string格式化輸出也可以和lambda函數(shù)結(jié)合來使用,代碼如下:
print(f"{(lambda x: x**2)(4)}")
output:
16