亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python變量格式化輸出實現原理解析

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

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

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

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

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

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

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

舉例

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

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

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

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

%10d 表示輸出的整數寬度至少為 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)

執行結果為:

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

從執行結果可以發現,對于整數和字符串,當數據的實際寬度小于指定寬度時,會在左側以空格補齊;當數據的實際寬度大于指定寬度時,會按照數據的實際寬度輸出。

指定對齊方式

默認情況下,print() 輸出的數據總是右對齊的。

當數據不夠寬時,數據總是靠右邊輸出,而在左邊補充空格以達到指定的寬度。

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

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

幾點說明:

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

例子:

n = 123456# %09d 表示最小寬度為9,左邊補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)

執行結果

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

指定小數精度

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

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

%m.nf%.nf

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

請看下面的代碼:

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

運行結果:

3.1420003.142+003.142

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 日韩精品无码一区二区三区 | 玖玖精品在线观看 | 伊人二区 | 国产在线91观看免费观看 | 国产一区在线免费观看 | 免费看一级黄色片 | 免费看一级黄色 | 在线免费观看网站入口在哪 | 日本一级毛片一级裸片 | 国产一区二区三区在线观看免费 | 78m成人亚洲 | 自拍偷拍国语对白 | 久久综合九九亚洲一区 | 国产香蕉国产精品偷在线观看 | 一级黄色a视频 | 亚洲国产天堂久久综合网站 | 国产原创视频在线 | 久久综合九色综合欧美播 | 国产成人啪一区二区 | chinese麻豆自制国产 | 国产素人在线观看 | 国产黄色片网站 | 成人精品视频网站 | 手机看片福利日韩欧美看片 | 一区二区三区四区在线播放 | 农村妇女又色黄一级毛片 | 国产在线精品观看一区 | 亚洲精品日韩一区二区 | 爱呦视频在线播放网址 | 成人啪啪免费视频 | 1024亚洲天堂| 黄色免费在线观看网站 | 国产1区二区 | 精品久久国产 | 最新lutube亚洲看片在线观看 | 国产精品高清一区二区 | 日本高清视频色视频kk266 | 日本性生活网站 | 一本一道波多野结衣一区二区 | 国产福利写真视频在线观看 | 日本成人黄色片 |