亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

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

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

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

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

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

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

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

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

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

舉例

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

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

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

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

%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),對(duì)于整數(shù)和字符串,當(dāng)數(shù)據(jù)的實(shí)際寬度小于指定寬度時(shí),會(huì)在左側(cè)以空格補(bǔ)齊;當(dāng)數(shù)據(jù)的實(shí)際寬度大于指定寬度時(shí),會(huì)按照數(shù)據(jù)的實(shí)際寬度輸出。

指定對(duì)齊方式

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

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

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

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

幾點(diǎn)說明:

對(duì)于整數(shù),指定左對(duì)齊時(shí),在右邊補(bǔ)0是沒有效果的,因?yàn)檫@樣會(huì)改變整數(shù)的值。 對(duì)于小數(shù),以上三個(gè)標(biāo)志可以同時(shí)存在。 對(duì)于字符串,只能使用-標(biāo)志,因?yàn)榉?hào)對(duì)于字符串沒有意義,而補(bǔ) 0 會(huì)改變字符串的值。

例子:

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

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

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

指定小數(shù)精度

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

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

%m.nf%.nf

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

請(qǐng)看下面的代碼:

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

運(yùn)行結(jié)果:

3.1420003.142+003.142

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

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 欧美曰韩一区二区三区 | 亚洲偷自拍另类图片二区 | 国产精品久久毛片蜜月 | 一区二区三区精品视频 | 欧美特黄特色aaa大片免费看 | 国产黄色小视频在线观看 | 成年男人午夜片免费观看 | 久久久久久久99久久久毒国产 | 神马午夜不卡 | 国产精品亚洲高清一区二区 | 欧美特黄高清免费观看的 | 久久男人的天堂 | 国产成人久久精品一区二区三区 | 视频国产91 | 国产美女一级毛片 | 亚洲精品91香蕉综合区 | 一区视频在线播放 | 91在线精品亚洲一区二区 | 欧美在线高清视频播放免费 | 欧美成人全部免费观看1314色 | 日韩在线视频观看 | 91精品成人免费国产片 | 91高清免费国产自产 | 国产主播大尺度精品福利 | 国产在线观看91精品一区 | 久久久免费观看 | 91视频国产精品 | 很黄的网站在线观看 | 久久a 热6 | 精品久久久久久中文字幕 | 成年人视频网站免费 | 日韩高清在线二区 | 青青青青爽视频在线播放 | 欧美成人香蕉网在线观看 | 欧美韩国日本在线 | 亚洲一级毛片视频 | 在线日韩视频 | 欧美做爰野外在线视频观看 | 一区二区在线免费视频 | 久久在线视频 | 国产一区二区精品久 |