您好,登錄后才能下訂單哦!
小編給大家分享一下Python實現變量格式化輸出的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
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 = 1
print("我的學號是 %06d" % student_no)
# 我的學號是 000001scale = 0.2
print("數據比例是 %.02f%%" % (scale * 100))
# 數據比例是 20.00%
指定最小輸出寬度
當使用轉換說明符時,可以使用下面的格式指定最小輸出寬度(至少占用多少個字符的位置):
%10d 表示輸出的整數寬度至少為 10
%20s 表示輸出的字符串寬度至少為 20
n = 1234567
print("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,而不是補充空格。 |
幾點說明:
例子:
n = 123456
# %09d 表示最小寬度為9,左邊補0
print("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):000123456
n(+9): +123456
f(-+0):+140.500000
s(-10):Hello .
指定小數精度
對于小數(浮點數),print() 還允許指定小數點后的數字位數,也即指定小數的輸出精度。
精度值需要放在最小寬度之后,中間用點號.隔開;也可以不寫最小寬度,只寫精度。具體格式如下:
%m.nf
%.nf
m 表示最小寬度,n 表示輸出精度,. 是必須存在的。
請看下面的代碼:
f = 3.141592653
# 最小寬度為8,小數點后保留3位
print("%8.3f" % f)
# 最小寬度為8,小數點后保留3位,左邊補0
print("%08.3f" % f)
# 最小寬度為8,小數點后保留3位,左邊補0,帶符號
print("%+08.3f" % f)
運行結果:
3.142
0003.142
看完了這篇文章,相信你對Python實現變量格式化輸出的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。