一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python字符串格式化

Python字符串格式化

2020-07-15 10:15Python教程網(wǎng) Python

Python字符串格式化操作符(%)只適用于字符串類型,非常類似于C 語言里面的printf()函數(shù)的字符串格式化,甚至所用的符號都一樣,都用百分號(%),并且支持所有printf()式的格式化操作。

在許多編程語言中都包含有格式化字符串的功能,比如C和Fortran語言中的格式化輸入輸出。Python中內置有對字符串進行格式化的操作%。

模板

格式化字符串時,Python使用一個字符串作為模板。模板中有格式符,這些格式符為真實值預留位置,并說明真實數(shù)值應該呈現(xiàn)的格式。Python用一個tuple將多個值傳遞給模板,每個值對應一個格式符。

比如下面的例子:

 

復制代碼 代碼如下:

print("I'm %s. I'm %d year old" % ('Vamei', 99))

 

上面的例子中,

"I'm %s. I'm %d year old" 為我們的模板。%s為第一個格式符,表示一個字符串。%d為第二個格式符,表示一個整數(shù)。('Vamei', 99)的兩個元素'Vamei'和99為替換%s和%d的真實值。
在模板和tuple之間,有一個%號分隔,它代表了格式化操作。

整個"I'm %s. I'm %d year old" % ('Vamei', 99) 實際上構成一個字符串表達式。我們可以像一個正常的字符串那樣,將它賦值給某個變量。比如:

 

復制代碼 代碼如下:

a = "I'm %s. I'm %d year old" % ('Vamei', 99)
print(a)

 

我們還可以用詞典來傳遞真實值。如下:

 

復制代碼 代碼如下:

print("I'm %(name)s. I'm %(age)d year old" % {'name':'Vamei', 'age':99})

 

可以看到,我們對兩個格式符進行了命名。命名使用()括起來。每個命名對應詞典的一個key。

格式符

格式符為真實值預留位置,并控制顯示的格式。格式符可以包含有一個類型碼,用以控制顯示的類型,如下:

%s    字符串 (采用str()的顯示)

%r    字符串 (采用repr()的顯示)

%c    單個字符

%b    二進制整數(shù)

%d    十進制整數(shù)

%i    十進制整數(shù)

%o    八進制整數(shù)

%x    十六進制整數(shù)

%e    指數(shù) (基底寫為e)

%E    指數(shù) (基底寫為E)

%f    浮點數(shù)

%F    浮點數(shù),與上相同

%g    指數(shù)(e)或浮點數(shù) (根據(jù)顯示長度)

%G    指數(shù)(E)或浮點數(shù) (根據(jù)顯示長度)

%%    字符"%"

可以用如下的方式,對格式進行進一步的控制:

%[(name)][flags][width].[precision]typecode

(name)為命名

flags可以有+,-,' '或0。+表示右對齊。-表示左對齊。' '為一個空格,表示在正數(shù)的左側填充一個空格,從而與負數(shù)對齊。0表示使用0填充。

width表示顯示寬度

precision表示小數(shù)點后精度

比如:

 

復制代碼 代碼如下:

print("%+10x" % 10)
print("%04d" % 5)
print("%6.3f" % 2.3)

 

上面的width, precision為兩個整數(shù)。我們可以利用*,來動態(tài)代入這兩個量。比如:

 

復制代碼 代碼如下:

print("%.*f" % (4, 1.2))

 

Python實際上用4來替換*。所以實際的模板為"%.4f"。

例子:

 

復制代碼 代碼如下:

In [1]: "%(name)s is %(age)s" % {"name":"bob", "age": 12}
Out[1]: 'bob is 12'
In [2]: "%s is %s" % ("bob", "13")
Out[2]: 'bob is 13'
In [6]: "{0} is {1}".format("bob", "14")
Out[6]: 'bob is 14'
In [7]: "{name} is {age}".format(name="bob",age="15")
Out[7]: 'bob is 15'

 

總結

Python中內置的%操作符可用于格式化字符串操作,控制字符串的呈現(xiàn)格式。Python中還有其他的格式化字符串的方式,但%操作符的使用是最方便的。

以上所述就是本文的全部內容了,希望大家能夠喜歡。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 午夜想想爱 | 国产精品久久久久久搜索 | 四虎院影永久在线观看 | 精品亚洲视频在线 | 日韩国产成人资源精品视频 | 99视频都是精品热在线播放 | 国产成年人在线观看 | 欧美日韩一区二区综合在线视频 | 色版网站| 九九精品免视频国产成人 | 国产精品成人麻豆专区 | 动漫美女被吸乳羞羞小说 | 午夜小视频免费观看 | 欧美a级在线观看 | 色狠狠成人综合网 | 高h禁伦奶水女 | 2018成年动漫在线观看 | a及毛片| 成人1234| 亚洲欧美日韩特级毛片 | 私人黄色影院 | 91国语自产拍在线观看 | 午夜影视在线观看 | 国产免费好大好硬视频 | bl超h 高h 污肉快穿np | 无颜之月5集全免费看无删除 | 亚洲国产日韩欧美mv | 乌克兰少妇大胆大BBW | 国产亚洲精品视频中文字幕 | porno18hd老师| 午夜福利视频极品国产83 | 国产精品一二区 | 欧美人与日本人xx在线视频 | 国产成+人+综合+亚洲欧美丁香花 | 四虎影库紧急大通知 | 美女的隐私视频免费看软件 | 国产高清露脸学生在线观看 | 成人啪啪漫画羞羞漫画www网站 | 日韩欧美天堂 | 久久99亚洲热最新地址获取 | 日本javhd |