日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:Python格式化字符串(格式化輸出)

Python 提供了“%”對各種類型的數(shù)據(jù)進行格式化輸出,例如如下代碼:

網(wǎng)站的建設創(chuàng)新互聯(lián)公司專注網(wǎng)站定制,經(jīng)驗豐富,不做模板,主營網(wǎng)站定制開發(fā).小程序定制開發(fā),H5頁面制作!給你煥然一新的設計體驗!已為成都自拌料攪拌車等企業(yè)提供專業(yè)服務。

price = 108
print ("the book's price is %s" % price)

上面程序中的 print 函數(shù)包含以下三個部分,第一部分是格式化字符串(相當于字符串模板),該格式化字符串中包含一個“%s”占位符,它會被第三部分的變量或表達式的值代替;第二部分固定使用“%”作為分隔符。

格式化字符串中的“%s”被稱為轉換說明符(Conversion Specifier),其作用相當于一個占位符,它會被后面的變量或表達式的值代替?!?s”指定將變量或值使用 str() 函數(shù)轉換為字符串。

如果格式化字符串中包含多個“%s”占位符,第三部分也應該對應地提供多個變量,并且使用圓括號將這些變量括起來。例如如下代碼:

user = "Charli"
age = 8
# 格式化字符串有兩個占位符,第三部分提供2個變量
print("%s is a %s years old boy" % (user , age))

在格式化字符串中難道只能使用“%s”嗎?還有其他轉換說明符嗎?如果只有“%s”這一種形式,Python 的格式化功能未免也太單一了。

實際上, Python 提供了如下所示的轉換說明符:

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

當使用上面的轉換說明符時,可指定轉換后的最小寬度,例如如下代碼:

num = -28
print("num is: %6i" % num)
print("num is: %6d" % num)
print("num is: %6o" % num)
print("num is: %6x" % num)
print("num is: %6X" % num)
print("num is: %6s" % num)

運行上面代碼,可以看到如下輸出結果:

num is:    -28
num is:    -28
num is:    -34
num is:    -1c
num is:    -1C
num is:    -28

從上面的輸出結果可以看出,此時指定了字符串的最小寬度為 6,因此程序轉換數(shù)值時總寬度為 6,程序自動在數(shù)值前面補充了三個空格。

在默認情況下,轉換出來的字符串總是右對齊的,不夠寬度時左邊補充空格。Python 也允許在最小寬度之前添加一個標志來改變這種行為,Python 支持如下標志:

-:指定左對齊。

+:表示數(shù)值總要帶著符號(正數(shù)帶“+”,負數(shù)帶“-”)。

0:表示不補充空格,而是補充 0。

例如如下代碼

num2 = 30
# 最小寬度為0,左邊補0
print("num2 is: %06d" % num2)
# 最小寬度為6,左邊補0,總帶上符號
print("num2 is: %+06d" % num2)
# 最小寬度為6,右對齊
print("num2 is: %-6d" % num2)

運行上面代碼,可以看到如下輸出結果:

num2 is: 000030
num2 is: +00030
num2 is: 30

對于轉換浮點數(shù),Python 還允許指定小數(shù)點后的數(shù)字位數(shù):如果轉換的是字符串,Python 允許指定轉換后的字符串的字符數(shù)。這個標志被稱為精度值,該精度值被放在最小寬度之后,中間用點 () 隔開。例如如下代碼:

my_value = 3.001415926535
# 最小寬度為8,小數(shù)點后保留3位
print("my_value is: %8.3f" % my_value)
# 最小寬度為8,小數(shù)點后保留3位,左邊補0
print("my_value is: %08.3f" % my_value)
# 最小寬度為8,小數(shù)點后保留3位,左邊補0,始終帶符號
print("my_value is: %+08.3f" % my_value)
the_name = "Charlie"
# 只保留3個字符
print("the name is: %.3s" % the_name) # 輸出Cha
# 只保留2個字符,最小寬度10
print("the name is: %10.2s" % the_name)

運行上面代碼,可以看到如下輸出結果:

my_value is:    3.001
my_value is: 0003.001
my_value is: +003.001
the name is: Cha
the name is:         Ch


網(wǎng)頁標題:創(chuàng)新互聯(lián)Python教程:Python格式化字符串(格式化輸出)
文章出自:http://www.5511xx.com/article/dhjeccp.html