左手編程,右手年華。大家好,我是一點,關(guān)注我,帶你走入編程的世界。
公眾號:一點sir,關(guān)注領(lǐng)取python編程資料
在 Python 中,使用 format()
方法是更推薦的方式來進行字符串格式化,特別是在Python3中。雖然%
表達式仍然可以在Python中使用,但已經(jīng)不推薦使用了,新的項目中能不用就不用,誰知道哪天社區(qū)就不支持了。這玩意沒有為啥,社區(qū)的那些開發(fā)人員覺得不好,投票決定,就改了。
接下來就講一下官方流程化的話。
使用 format()
方法可以確保占位符與變量匹配的正確順序,使代碼更加可讀且易于維護。format()
方法提供了多種方式來控制變量的匹配和排列順序,使代碼更具可讀性和可維護性。以下是幾種常用的方法:
位置參數(shù)
在格式化字符串中使用占位符 {}
,并使用 format()
方法的參數(shù)按順序填充,這樣可以保變量與占位符的匹配順序是一致的。
name = 'Alittle'
age = 33
introductions = 'Hello, my name is {} and I am {} years old'.format(name, age)
print(introductions)
輸出:(下面例子輸出都一樣)
Hello, my name is Alittle and I am 33 years old
注意,位置參數(shù)的順序是很重要的,因為它們決定了哪個參數(shù)填充到相應(yīng)的占位符中。
命名參數(shù)
在格式化字符串中使用命名占位符 {n}
,并使用 format()
方法的關(guān)鍵字參數(shù)進行填充,這樣可以明確指定變量與占位符的對應(yīng)關(guān)系,即使順序發(fā)生變化,代碼也不會受到影響。
name = 'Alittle'
age = 33
introductions = 'Hello, my name is {n} and I am {a} years old'.format(n=name, a=age)
print(introductions)
索引參數(shù)
可以使用索引來指定變量與占位符的對應(yīng)關(guān)系。在格式化字符串中使用數(shù)字索引 {0}
、{1}
等,并將相應(yīng)的變量按順序傳遞給 format()
。使用索引參數(shù)的好處是,可以在格式化字符串中多次使用同一個變量,而不必重復(fù)傳遞相同的值。
name = 'Alittle'
age = 33
introductions = 'Hello, my name is {0} and I am {1} years old'.format(name, age)
print(introductions)
在Python 3.6之后(好像是)版本還引入了一種新的格式化字符串的方式,稱為 f-string。它使用以 f
或 F
開頭的字符串,并使用花括號 {}
來包裹變量,像下面這樣。
name = 'Alittle'
age = 33
introductions = f'Hello, my name is {name} and I am {age} years old'
print(introductions)
f-string 的方式更加簡潔和直觀,就是在字符串前面需要幾個f
來表示這個是f-string,同時還能直接在字符串中執(zhí)行表達式,使代碼更加簡潔和優(yōu)雅。然而,如果使用的是較舊版本的 Python,可能不支持f-string。文章來源:http://www.zghlxwxcb.cn/news/detail-853827.html
反正就看著使用吧,比較正式一點的項目就用高版本的寫法,自己練手的,我覺得沒有任何區(qū)別,并沒有啥本質(zhì)上的關(guān)系,隨自己高興。文章來源地址http://www.zghlxwxcb.cn/news/detail-853827.html
到了這里,關(guān)于python3字符串格式化用format()好還是 % 表達式好的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!