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

Python格式化字符串的四種常見方式

 更新時間:2025年04月24日 08:29:43   作者:Android小碼蜂  
在 Python 編程中,格式化字符串是一項常見且重要的任務(wù),Python 提供了多種格式化字符串的方式,每種方式都有其特點和適用場景,本文將詳細(xì)介紹 Python 中格式化字符串的 4 種常見方式,需要的朋友可以參考下

一、引言

在 Python 編程中,格式化字符串是一項常見且重要的任務(wù),它能夠幫助我們將變量、表達(dá)式等內(nèi)容插入到字符串中,使輸出更加清晰和易讀。Python 提供了多種格式化字符串的方式,每種方式都有其特點和適用場景。本文將詳細(xì)介紹 Python 中格式化字符串的 4 種常見方式,并通過豐富的代碼示例進(jìn)行說明。

二、% 格式化

2.1 基本原理

% 格式化是 Python 中最古老的字符串格式化方式,它使用 % 操作符,根據(jù) % 后面的格式化字符來指定變量的類型,并將變量插入到字符串中。

2.2 代碼示例

# 定義變量
name = "Alice"
age = 25
# 使用 % 格式化字符串,%s 表示字符串類型,%d 表示整數(shù)類型
message = "My name is %s and I am %d years old." % (name, age)
print(message)  # 輸出格式化后的字符串

# 格式化浮點數(shù),%.2f 表示保留兩位小數(shù)
height = 1.65
height_message = "My height is %.2f meters." % height
print(height_message)

在上述代碼中,%s 用于格式化字符串,%d 用于格式化整數(shù),%.2f 用于格式化浮點數(shù)并保留兩位小數(shù)。通過 % 操作符,將變量插入到對應(yīng)的位置。

三、str.format() 方法

3.1 基本原理

str.format() 方法是 Python 2.6 引入的一種格式化字符串的方式,它使用花括號 {} 作為占位符,通過 format() 方法中的參數(shù)來填充占位符。

3.2 代碼示例

# 定義變量
name = "Bob"
age = 30
# 使用 str.format() 方法格式化字符串
message = "My name is {} and I am {} years old.".format(name, age)
print(message)

# 通過索引指定占位符的填充順序
message_index = "My name is {1} and I am {0} years old.".format(age, name)
print(message_index)

# 通過關(guān)鍵字參數(shù)指定占位符的填充
message_keyword = "My name is {name} and I am {age} years old.".format(name=name, age=age)
print(message_keyword)

# 格式化浮點數(shù),指定保留小數(shù)位數(shù)
weight = 70.5
weight_message = "My weight is {:.1f} kilograms.".format(weight)
print(weight_message)

在上述代碼中,{} 是默認(rèn)的占位符,也可以通過索引或關(guān)鍵字參數(shù)來指定占位符的填充順序和內(nèi)容。同時,還可以使用 :.1f 等格式說明符來格式化浮點數(shù)。

四、f-string(格式化字符串字面值)

4.1 基本原理

f-string 是 Python 3.6 引入的一種新的格式化字符串方式,它在字符串前加上 fF 前綴,在字符串中使用花括號 {} 直接嵌入變量或表達(dá)式。

4.2 代碼示例

# 定義變量
name = "Charlie"
age = 35
# 使用 f-string 格式化字符串
message = f"My name is {name} and I am {age} years old."
print(message)

# 在 f-string 中使用表達(dá)式
birth_year = 2023 - age
message_expr = f"I was born in {birth_year}."
print(message_expr)

# 格式化浮點數(shù)
salary = 5000.75
salary_message = f"My monthly salary is {salary:.2f} yuan."
print(salary_message)

在上述代碼中,通過在字符串前加上 f 前綴,在花括號中直接使用變量或表達(dá)式,Python 會自動將其替換為對應(yīng)的值。同時,也可以使用格式說明符來格式化變量。

五、模板字符串

5.1 基本原理

模板字符串是 Python 的 string 模塊中的 Template 類提供的一種格式化字符串方式,它使用 $ 符號作為占位符,通過 substitute() 方法來替換占位符。

5.2 代碼示例

from string import Template

# 定義變量
name = "David"
age = 40
# 創(chuàng)建模板字符串
template = Template("My name is $name and I am $age years old.")
# 使用 substitute() 方法替換占位符
message = template.substitute(name=name, age=age)
print(message)

在上述代碼中,首先導(dǎo)入 Template 類,然后創(chuàng)建一個模板字符串,使用 $ 符號定義占位符。最后,通過 substitute() 方法將變量替換到占位符中。

六、總結(jié)與展望

6.1 總結(jié)

Python 提供了多種格式化字符串的方式,每種方式都有其優(yōu)缺點:

  • % 格式化是最古老的方式,語法簡單,但不夠靈活。
  • str.format() 方法提供了更多的靈活性,支持索引、關(guān)鍵字參數(shù)等,但代碼相對冗長。
  • f-string 是最簡潔和直觀的方式,支持直接嵌入變量和表達(dá)式,代碼可讀性高,但要求 Python 版本在 3.6 及以上。
  • 模板字符串提供了一種安全的格式化方式,適用于需要從用戶輸入中獲取數(shù)據(jù)進(jìn)行格式化的場景。

6.2 展望

隨著 Python 語言的不斷發(fā)展,f-string 由于其簡潔性和易用性,可能會成為未來格式化字符串的主流方式。同時,模板字符串在處理用戶輸入時的安全性優(yōu)勢也會在特定場景中得到更廣泛的應(yīng)用。開發(fā)者可以根據(jù)具體的需求和 Python 版本選擇合適的格式化方式。

以上就是Python格式化字符串的四種常見方式的詳細(xì)內(nèi)容,更多關(guān)于Python格式化字符串的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python實現(xiàn)H2O中的隨機(jī)森林算法介紹及其項目實戰(zhàn)

    python實現(xiàn)H2O中的隨機(jī)森林算法介紹及其項目實戰(zhàn)

    這篇文章主要介紹了python實現(xiàn)H2O中的隨機(jī)森林算法介紹及其項目實戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Python函數(shù)any()和all()的用法及區(qū)別介紹

    Python函數(shù)any()和all()的用法及區(qū)別介紹

    any函數(shù):any(x),只要x中有一個不為空,0,false就返回True,否則返回False。all(x)函數(shù)必須x中的所有元素均不為空,0,false才會返回True,否則返回False。接下來通過本文給大家介紹Python函數(shù)any()和all()的用法及區(qū)別介紹,需要的朋友參考下吧
    2018-09-09
  • python的多元數(shù)據(jù)類型(下)

    python的多元數(shù)據(jù)類型(下)

    這篇文章主要為大家詳細(xì)介紹了python的多元數(shù)據(jù)類型,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 使用python為mysql實現(xiàn)restful接口

    使用python為mysql實現(xiàn)restful接口

    這篇文章主要介紹了使用python為mysql實現(xiàn)restful接口的相關(guān)資料,需要的朋友可以參考下
    2018-01-01
  • python使用numpy計算兩個框的iou方法示例

    python使用numpy計算兩個框的iou方法示例

    這篇文章主要介紹了python使用numpy計算兩個框的iou方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • python 遞歸相關(guān)知識總結(jié)

    python 遞歸相關(guān)知識總結(jié)

    這篇文章主要介紹了python 遞歸相關(guān)知識總結(jié),幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-03-03
  • Python 如何利用pandas 和 matplotlib繪制柱狀圖

    Python 如何利用pandas 和 matplotlib繪制柱狀圖

    Python 中的 pandas 和 matplotlib 庫提供了豐富的功能,可以幫助你輕松地繪制各種類型的圖表,本文將介紹如何使用這兩個庫,繪制一個店鋪銷售數(shù)量的柱狀圖,并添加各種元素,如數(shù)據(jù)標(biāo)簽、圖例、網(wǎng)格線等,感興趣的朋友一起看看吧
    2023-10-10
  • 深入理解Python中的super()方法

    深入理解Python中的super()方法

    super 是用來解決多重繼承問題的,直接用類名調(diào)用父類方法在使用單繼承的時候沒問題,但是如果使用多繼承,會涉及到查找順序(MRO)、重復(fù)調(diào)用(鉆石繼承)等種種問題。這篇文章主要給大家介紹了關(guān)于Python中super()方法的相關(guān)資料,需要的朋友可以參考下。
    2017-11-11
  • Python變量的作用域詳解

    Python變量的作用域詳解

    這篇文章主要為大家介紹了Python變量的作用域,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • matlab輸出數(shù)據(jù)為excel文件的問題

    matlab輸出數(shù)據(jù)為excel文件的問題

    這篇文章主要介紹了matlab輸出數(shù)據(jù)為excel文件的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08

最新評論