首頁  >  文章  >  後端開發  >  Python中字串的格式化方法總結

Python中字串的格式化方法總結

高洛峰
高洛峰原創
2017-03-06 13:37:331254瀏覽

舊方法

Python2.6之前,格式字串的使用方法相對更簡單些,雖然其能夠接收的參數數量有限制。這些方法在Python3.3中仍然有效,但已有含蓄的警告稱將完全淘汰這些方法,目前還沒有明確的時間進度表。

格式化浮點數:

pi = 3.14159
print(" pi = %1.2f ", % pi)


#多個替換值:

##

s1 = "cats"
s2 = "dogs"
s3 = " %s and %s living together" % (s1, s2)

沒有足夠的參數:

使用舊的格式化方法,我經常犯錯"TypeError: not enough arguments for formating string",因為我數錯了替換變數的數量,編寫如下這樣的程式碼很容易漏掉變數。

set = (%s, %s, %s, %s, %s, %s, %s, %s) " % (a,b,c,d,e,f,g,h,i)

對於新的Python格式字串,可以使用編號的參數,這樣你就不需要統計有多少個參數。

set = set = " ({0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}) ".format(a,b,c,d,e,f,g)

Python 2.x 基於字典字串格式化

"%(n)d %(x)s" %{"n":1, "x":"spam"}
reply = """
Greetings...
Hello %(name)s!
Your age squared is %(age)s
"""
values = {'name':'Bob', 'age':40}
print rely % values

#Python 3.x format方法格式化

template = '{0},{1} and {2}'
template.format('spam','ham','eggs')

template = '{motto}, {pork} and {food}'
template.format(motto='spam', pork='ham', food='eggs')

template = '{motto}, {0} and {food}'
template.format('ham', motto='spam', food='eggs')

'{motto}, {0} and {food}'.format(42, motto=3.14, food=[1,2,3])


更多Python中字串的格式化方法總結相關文章請關注PHP中文網站!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn