欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python3格式化字符串 f-string的高級(jí)用法(推薦)

 更新時(shí)間:2020年03月04日 08:08:40   作者:油膩胖大叔  
從Python 3.6開(kāi)始,f-string是格式化字符串的一種很好的新方法。與其他格式化方式相比,它們不僅更易讀,更簡(jiǎn)潔,不易出錯(cuò),而且速度更快!本文重點(diǎn)給大家介紹python3格式化字符串 f-string的高級(jí)用法,一起看看吧

f-string,亦稱為格式化字符串常量(formatted string literals),是Python3.6新引入的一種字符串格式化方法,該方法源于PEP 498 – Literal String Interpolation,主要目的是使格式化字符串的操作更加簡(jiǎn)便。

f-string在形式上是以 f 或 F 修飾符引領(lǐng)的字符串(f'xxx' 或 F'xxx'),以大括號(hào) {} 標(biāo)明被替換的字段;f-string在本質(zhì)上并不是字符串常量,而是一個(gè)在運(yùn)行時(shí)運(yùn)算求值的表達(dá)式:

While other string literals always have a constant value, formatted strings are really expressions evaluated at run time.
(與具有恒定值的其它字符串常量不同,格式化字符串實(shí)際上是運(yùn)行時(shí)運(yùn)算求值的表達(dá)式。)
—— Python Documentation

f-string在功能方面不遜于傳統(tǒng)的%-formatting語(yǔ)句和str.format()函數(shù),同時(shí)性能又優(yōu)于二者,且使用起來(lái)也更加簡(jiǎn)潔明了,因此對(duì)于Python3.6及以后的版本,推薦使用f-string進(jìn)行字符串格式化。

從Python 3.6開(kāi)始,f-string是格式化字符串的一種很好的新方法。與其他格式化方式相比,它們不僅更易讀,更簡(jiǎn)潔,不易出錯(cuò),而且速度更快!

在Python 3.6之前,有兩種將Python表達(dá)式嵌入到字符串文本中進(jìn)行格式化的主要方法:%-formatting和str.format()。

%-formatting

字符串對(duì)象具有使用%運(yùn)算符的內(nèi)置操作,您可以使用它來(lái)格式化字符串。

name = "tom"
print("貓的名字叫%s"%name)

 輸出:

cat name is tom

上面的示例代碼看起來(lái)足夠易讀,但是,一旦開(kāi)始使用多個(gè)參數(shù)和更長(zhǎng)的字符串,代碼就將變得不太容易閱讀。

name = "tom"
age = 2
action = "迅速"
disposition = "懶"

print("貓的名字叫%s,今年%d歲了,抓老鼠非常%s,但是非常%s,白天總睡覺(jué)。"%(name, age, action, disposition))

輸出:

貓的名字叫tom,今天2歲了,抓老鼠非常迅速,但是非常懶,白天總睡覺(jué)。

str.format()

str.format()是對(duì)%-formatting的改進(jìn)。它使用正常的函數(shù)調(diào)用語(yǔ)法,并且可以通過(guò)對(duì)要轉(zhuǎn)換為字符串的對(duì)象的__format __()方法進(jìn)行擴(kuò)展。

使用str.format(),替換字段用大括號(hào)標(biāo)記:

name = "tom"
print("貓的名字叫{}".format(name))

輸出:

貓的名字叫tom

也可以通過(guò)引用其索引,以任何順序引用變量:

name = "tom"
age = 2

print("貓的名字叫{1},今年{0}歲了,今天星期{0}".format(age, name))

輸出:

貓的名字叫tom,今年2歲了,今天星期2

 也可以使用 ** 來(lái)用字典,巧妙的完成格式化:

cat = {"name": "tom", "age": 2}

print("貓的名字叫{name},今年{age}歲了".format(**cat))

輸出:

貓的名字叫tom,今年2歲了

使用 str.format() 格式化代碼比使用 %-formatting 更易讀,但當(dāng)處理多個(gè)參數(shù)和更長(zhǎng)的字符串時(shí),str.format()看起來(lái)仍然非常冗長(zhǎng)。

f-Strings:一種改進(jìn)Python格式字符串的新方法

f-Strings語(yǔ)法與str.format()使用的語(yǔ)法類似,但較少細(xì)節(jié)啰嗦,只需要在格式化字符串前加f或F即可。看看這是多么容易可讀:

name = "tom"
age = 2

print(f"貓的名字叫{name},今年{age}歲了")

輸出:

貓的名字叫tom,今年2歲了

格式化時(shí)可以使用函數(shù):

name = "tom"
age = 2

print(F"貓的名字叫{name.upper()},今年{age}歲了")

輸出:

貓的名字叫TOM,今年2歲了

格式化時(shí)可以使用字典:

cat = {"name": "tom", "age": 2}

print(F"貓的名字叫{cat['name']},今年{cat['age']}歲了")

輸出:

貓的名字叫tom,今年2歲了

 格式時(shí)可以對(duì)浮點(diǎn)數(shù)精度做限制:

name = "tom"
age = 2.1274

print(F"貓的名字叫{name},今年{age: .2f}歲了")

輸出:

貓的名字叫tom,今年 2.13歲了

總結(jié)

到此這篇關(guān)于python3格式化字符串 f-string的高級(jí)用法(推薦)的文章就介紹到這了,更多相關(guān)python f-string 格式化字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python使用ffmpy將amr格式的音頻轉(zhuǎn)化為mp3格式的例子

    Python使用ffmpy將amr格式的音頻轉(zhuǎn)化為mp3格式的例子

    今天小編就為大家分享一篇Python使用ffmpy將amr格式的音頻轉(zhuǎn)化為mp3格式的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-08-08
  • 基于K-Means聚類算法演示及可視化展示

    基于K-Means聚類算法演示及可視化展示

    這篇文章主要介紹了基于K-Means聚類算法演示及可視化展示,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 正則化DropPath/drop_path用法示例(Python實(shí)現(xiàn))

    正則化DropPath/drop_path用法示例(Python實(shí)現(xiàn))

    DropPath 類似于Dropout,不同的是 Drop將深度學(xué)習(xí)模型中的多分支結(jié)構(gòu)隨機(jī)"失效",而Dropout是對(duì)神經(jīng)元隨機(jī)"失效"這篇文章主要給大家介紹了關(guān)于正則化DropPath/drop_path用法的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • 深入理解Pytorch中的torch. matmul()

    深入理解Pytorch中的torch. matmul()

    這篇文章主要介紹了Pytorch中的torch. matmul()的相關(guān)資料,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • 使用PySpark實(shí)現(xiàn)數(shù)據(jù)清洗與JSON格式轉(zhuǎn)換的實(shí)踐詳解

    使用PySpark實(shí)現(xiàn)數(shù)據(jù)清洗與JSON格式轉(zhuǎn)換的實(shí)踐詳解

    在大數(shù)據(jù)處理中,PySpark?提供了強(qiáng)大的工具來(lái)處理海量數(shù)據(jù),特別是在數(shù)據(jù)清洗和轉(zhuǎn)換方面,本文將介紹如何使用?PySpark?進(jìn)行數(shù)據(jù)清洗,并將數(shù)據(jù)格式轉(zhuǎn)換為?JSON?格式的實(shí)踐,感興趣的可以了解下
    2023-12-12
  • 常用的10個(gè)Python實(shí)用小技巧

    常用的10個(gè)Python實(shí)用小技巧

    這篇文章主要介紹了常用的10個(gè)Python實(shí)用小技巧,幫助大家更好的理解和學(xué)習(xí)Python,感興趣的朋友可以了解下
    2020-08-08
  • pytest全局變量的使用詳解

    pytest全局變量的使用詳解

    全局變量是在函數(shù)外部定義的變量,所有函數(shù)內(nèi)部都可以使用這個(gè)變量,本文就來(lái)介紹一下pytest全局變量的使用,感興趣的可以了解一下
    2023-11-11
  • python使用xlrd和xlwt讀寫(xiě)Excel文件的實(shí)例代碼

    python使用xlrd和xlwt讀寫(xiě)Excel文件的實(shí)例代碼

    這篇文章主要介紹了python使用xlrd和xlwt讀寫(xiě)Excel文件的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-09-09
  • Python詞頻統(tǒng)計(jì)的兩種方法詳解

    Python詞頻統(tǒng)計(jì)的兩種方法詳解

    這篇文章主要為大家介紹了Python詞頻統(tǒng)計(jì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-12-12
  • python 實(shí)現(xiàn)查詢Neo4j多節(jié)點(diǎn)的多層關(guān)系

    python 實(shí)現(xiàn)查詢Neo4j多節(jié)點(diǎn)的多層關(guān)系

    今天小編就為大家分享一篇python 實(shí)現(xiàn)查詢Neo4j多節(jié)點(diǎn)的多層關(guān)系,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12

最新評(píng)論