av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

Python變量格式化輸出實現(xiàn)原理解析

瀏覽:25日期:2022-07-14 17:37:00

print() 函數(shù)使用以 % 開頭的轉(zhuǎn)換說明符對各種類型的數(shù)據(jù)進(jìn)行格式化輸出。

轉(zhuǎn)換說明符(Conversion Specifier)只是一個占位符(也稱為格式化操作符),它會被后面表達(dá)式(變量、常量、數(shù)字、字符串、加減乘除等各種形式)的值代替。

轉(zhuǎn)換說明符 解釋 %d、%i 轉(zhuǎn)換為帶符號的十進(jìn)制整數(shù) %o 轉(zhuǎn)換為帶符號的八進(jìn)制整數(shù) %x、%X 轉(zhuǎn)換為帶符號的十六進(jìn)制整數(shù) %e 轉(zhuǎn)化為科學(xué)計數(shù)法表示的浮點數(shù)(e 小寫) %E 轉(zhuǎn)化為科學(xué)計數(shù)法表示的浮點數(shù)(E 大寫) %f、%F 轉(zhuǎn)化為十進(jìn)制浮點數(shù) %g 智能選擇使用 %f 或 %e 格式 %G 智能選擇使用 %F 或 %E 格式 %c 格式化字符及其 ASCII 碼 %r 使用 repr() 函數(shù)將表達(dá)式轉(zhuǎn)換為字符串 %s 使用 str() 函數(shù)將表達(dá)式轉(zhuǎn)換為字符串 %% 輸出%

在 print() 函數(shù)中,由引號包圍的是格式化字符串,它相當(dāng)于一個字符串模板,可以放置一些轉(zhuǎn)換說明符(占位符)。

中間的%是一個分隔符,它前面是格式化字符串,后面是要輸出的表達(dá)式。

當(dāng)然,格式化字符串中也可以包含多個轉(zhuǎn)換說明符,這個時候也得提供多個表達(dá)式,用以替換對應(yīng)的轉(zhuǎn)換說明符,多個表達(dá)式必須使用小括號( )包圍起來。

舉例

name = ’小明’print('我的名字叫 %s,請多多關(guān)照!' % name) # 我的名字叫 小明,請多多關(guān)照!

student_no = 1print('我的學(xué)號是 %06d' % student_no)# 我的學(xué)號是 000001

scale = 0.2print('數(shù)據(jù)比例是 %.02f%%' % (scale * 100))# 數(shù)據(jù)比例是 20.00%指定最小輸出寬度

當(dāng)使用轉(zhuǎn)換說明符時,可以使用下面的格式指定最小輸出寬度(至少占用多少個字符的位置):

%10d 表示輸出的整數(shù)寬度至少為 10%20s 表示輸出的字符串寬度至少為 20n = 1234567print('n(10):%10d.' % n)print('n(5):%5d.' % n)url = 'https://www.baidu.com/python/'print('url(35):%35s.' % url)print('url(20):%20s.' % url)

執(zhí)行結(jié)果為:

n(10): 1234567.n(5):1234567.url(35): https://www.baidu.com/python/.url(20):https://www.baidu.com/python/.

從執(zhí)行結(jié)果可以發(fā)現(xiàn),對于整數(shù)和字符串,當(dāng)數(shù)據(jù)的實際寬度小于指定寬度時,會在左側(cè)以空格補(bǔ)齊;當(dāng)數(shù)據(jù)的實際寬度大于指定寬度時,會按照數(shù)據(jù)的實際寬度輸出。

指定對齊方式

默認(rèn)情況下,print() 輸出的數(shù)據(jù)總是右對齊的。

當(dāng)數(shù)據(jù)不夠?qū)挄r,數(shù)據(jù)總是靠右邊輸出,而在左邊補(bǔ)充空格以達(dá)到指定的寬度。

Python 允許在最小寬度之前增加一個標(biāo)志來改變對齊方式,Python支持的標(biāo)志如下。

標(biāo)志 說明 - 指定左對齊 + 表示輸出的數(shù)字總要帶著符號;整數(shù)帶+,負(fù)數(shù)帶-。 0 表示寬度不足時補(bǔ)充 0,而不是補(bǔ)充空格。

幾點說明:

對于整數(shù),指定左對齊時,在右邊補(bǔ)0是沒有效果的,因為這樣會改變整數(shù)的值。 對于小數(shù),以上三個標(biāo)志可以同時存在。 對于字符串,只能使用-標(biāo)志,因為符號對于字符串沒有意義,而補(bǔ) 0 會改變字符串的值。

例子:

n = 123456# %09d 表示最小寬度為9,左邊補(bǔ)0print('n(09):%09d' % n)# %+9d 表示最小寬度為9,帶上符號print('n(+9):%+9d' % n)f = 140.5# %-+010f 表示最小寬度為10,左對齊,帶上符號print('f(-+0):%-+010f' % f)s = 'Hello'# %-10s 表示最小寬度為10,左對齊print('s(-10):%-10s.' % s)

執(zhí)行結(jié)果

n(09):000123456n(+9): +123456f(-+0):+140.500000s(-10):Hello .

指定小數(shù)精度

對于小數(shù)(浮點數(shù)),print() 還允許指定小數(shù)點后的數(shù)字位數(shù),也即指定小數(shù)的輸出精度。

精度值需要放在最小寬度之后,中間用點號.隔開;也可以不寫最小寬度,只寫精度。具體格式如下:

%m.nf%.nf

m 表示最小寬度,n 表示輸出精度,. 是必須存在的。

請看下面的代碼:

f = 3.141592653# 最小寬度為8,小數(shù)點后保留3位print('%8.3f' % f)# 最小寬度為8,小數(shù)點后保留3位,左邊補(bǔ)0print('%08.3f' % f)# 最小寬度為8,小數(shù)點后保留3位,左邊補(bǔ)0,帶符號print('%+08.3f' % f)

運行結(jié)果:

3.1420003.142+003.142

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 手机av在线 | 久久久精品一区 | 国产精品99久久久久久久久久久久 | wwwww在线观看 | 日韩精品免费一区二区在线观看 | 成人午夜在线 | 免费的日批视频 | 国产一区二区三区在线 | 亚洲一区二区三区免费观看 | 夜夜艹| 国产精品久久久av | 黄视频免费观看 | 精品一区久久 | 日韩精品在线免费 | 综合在线视频 | 久久国产精品久久 | 日韩av在线一区二区三区 | 日韩免费看视频 | 欧美性猛交一区二区三区精品 | 国产乱码精品一区二区三区五月婷 | 日本午夜免费福利视频 | 免费毛片www com cn | 国产福利小视频 | 欧美在线a | 日韩欧美在线一区 | 成人久久久 | 天天艹天天干天天 | 一区二区成人 | 91社区在线观看播放 | 成人av电影免费在线观看 | 伦理二区 | 精品国产aⅴ | 亚洲精选一区 | 久久国产麻豆 | 精品国产一级 | 在线视频一区二区三区 | 视频一区在线观看 | 亚洲 精品 综合 精品 自拍 | 日本超碰| 久久久久一区二区三区四区 | 天天爽夜夜操 |