亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解Python的字符串格式化

 更新時(shí)間:2023年04月17日 08:58:57   作者:軒哥啊哈OvO  
這篇文章主要介紹了Python的字符串格式化,python的format函數(shù)怎么用,這篇文章向大家介紹format函數(shù)用法,需要的朋友可以參考下

Python在字符串格式化的兩種方式

  • %
  • format

%,關(guān)于整數(shù)的輸出

  • %o:oct 八進(jìn)制
  • %d:dec 十進(jìn)制
  • %x:hex 十六進(jìn)制
print("整數(shù):%d,%d,%d" % (1, 22.22, 33))
print("整數(shù)不足5位,左邊補(bǔ)空格   %5d   " % 22)
print("整數(shù)不足5位,左邊補(bǔ)0     %05d   " % 22)
print("整數(shù)不足5位,右邊補(bǔ)空格  %-5d   " % 22, "end")
print("八進(jìn)制 %o" % 222)
print("十六進(jìn)制 %x" % 12)

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

整數(shù):1,22,33
整數(shù)不足5位,左邊補(bǔ)空格      22   
整數(shù)不足5位,左邊補(bǔ)0     00022   
整數(shù)不足5位,右邊補(bǔ)空格  22       end
八進(jìn)制 336
十六進(jìn)制 c
  • 包含知識點(diǎn) 當(dāng)你有多個(gè)參數(shù)需要格式化輸出的時(shí)候,需要用元組 ;注意不能用列表因?yàn)榱斜硎强勺兊?nbsp;(1,2,3)
  • 若傳入的是浮點(diǎn)數(shù)如 22.55 ,最后輸出的是22,不會四舍五入哦
  • 若傳入了字符串 ,是會報(bào)錯滴! '22'

%,關(guān)于浮點(diǎn)數(shù)的輸出

print("浮點(diǎn)數(shù):%f,%f " % (1, 22.22))
print("浮點(diǎn)數(shù)保留兩位小數(shù):%.2f  " % 22.222)
print("浮點(diǎn)數(shù)保留兩位小數(shù),寬5位,不足補(bǔ)0:%05.2f  " % 2.222)

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

浮點(diǎn)數(shù):1.000000,22.220000 
浮點(diǎn)數(shù)保留兩位小數(shù):22.22  
浮點(diǎn)數(shù)保留兩位小數(shù),寬5位,不足補(bǔ)0:02.22  

包含知識點(diǎn)

默認(rèn)保留6位小數(shù),可通過 這種形式指定小數(shù)位,2代表保留兩位 .2f

%,關(guān)于字符串的輸出

print("字符串:%s,%s,%s" % (1, 22.22, [1, 2]))
print("字符串不足5位,左邊補(bǔ)空格   %5s   " % '2')
print("字符串不足5位,右邊補(bǔ)空格   %-5s   " % '2', "end")
print("字符串寬10位,截取兩位      %10.2s " % "hello.world")

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

字符串:1,22.22,[1, 2]
字符串不足5位,左邊補(bǔ)空格       2   
字符串不足5位,右邊補(bǔ)空格   2        end
字符串寬10位,截取兩位              he 

包含知識點(diǎn) 可以傳入任意類型的數(shù)據(jù),譬如整數(shù)、浮點(diǎn)數(shù)、列表、元組甚至字典,他都會自動轉(zhuǎn)成字符串類型

format格式化輸出

相對基本格式化輸出采用 % 的方法,format()功能更強(qiáng)大,該函數(shù)把字符串當(dāng)成一個(gè)模板,通過傳入的參數(shù)進(jìn)行格式化,并且使用大括號 {} 作為特殊字符代替 %

format,位置匹配(最常用)

  • 不帶編號,即“{}”
  • 帶數(shù)字編號,可調(diào)換順序,即“{1}”、“{2}”
  • 帶關(guān)鍵字,即“{a}”、“{tom}”
print("今天是{}的{}生日會".format("帥哥", 18))
 
print("今天是{1}的{0}生日會".format("帥哥", 18))
 
print("今天是{0}的{1}生日會".format("帥哥", 18))
 
print("今天是{name}的{key}生日會".format(22, 11, name="帥哥", key=18))
 
print("今天是{name}的{key}生日會,接著上{}".format("test", name="帥哥", key=18))
 
# 以下會報(bào)錯
print("今天是{0}的{}生日會".format("帥哥", 18))
 
print("今天是{name}的{key}生日會,接著上{}".format( name="帥哥", key=18,"test"))

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

今天是帥哥的18生日會
今天是18的帥哥生日會
今天是帥哥的18生日會
今天是帥哥的18生日會
今天是帥哥的19生日會,接著上test

包含知識點(diǎn) 當(dāng)你只寫了 時(shí),默認(rèn)按傳入的值的順序讀取{}

當(dāng)你寫了數(shù)字編號 ,則可以讀取對應(yīng)位置上的值,從0開始{1}

當(dāng)你指定了關(guān)鍵字 ,如果不指定 name=xxx ,則會報(bào)錯{name}

當(dāng)你指定了關(guān)鍵字,又只寫了 時(shí),你傳入帶有關(guān)鍵字指定的值必須寫在后面,類似函數(shù)(形參在前,實(shí)參在后){}

和 {1} 是不能共存的{}

總結(jié)

當(dāng)用到format時(shí),一個(gè)字符串里面的格式化輸出只用一種方式,不要混合使用,容易出問題且沒有必要

format,指定數(shù)據(jù)類型輸出

print("整數(shù){:d}".format(123))
print("浮點(diǎn)數(shù){:5.2f}".format(123.19))
print("字符串{:s}".format('123'))
print("八進(jìn)制{:o}".format(12))
print("十六進(jìn)制{:x}".format(13))

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

整數(shù)123
浮點(diǎn)數(shù)123.19
字符串123
八進(jìn)制14
十六進(jìn)制d

包含知識點(diǎn)

  • 指定了 ,則只能傳字符串值,如果傳其他類型值不會自動轉(zhuǎn)換:s
  • 當(dāng)你不指定類型時(shí),你傳任何類型都能成功,如無特殊必要,可以不用指定類型
  • 如果要結(jié)合數(shù)字編號和關(guān)鍵字使用可以如下
print("關(guān)鍵字 {num:d}".format(num=123))
print("數(shù)字編號 {0:d},{1:s}".format(123, "123"))

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

關(guān)鍵字 123
數(shù)字編號 123,123

format,位數(shù)補(bǔ)齊

print('默認(rèn)左對齊,寬度為10,不足補(bǔ)空格:{:10}'.format("123"), "end")
 
print('左對齊,寬度為10,不足補(bǔ)空格:{:<10}'.format("123"), "end")
 
print('右對齊,寬度為10,不足補(bǔ)空格:{}{:>10}'.format("start", "123"))
 
print('右對齊,寬度為10,取兩位小數(shù),不足補(bǔ)0:{:0>10.2f}'.format(22.22555))

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

默認(rèn)左對齊,寬度為10,不足補(bǔ)空格:       123 end
左對齊,寬度為10,不足補(bǔ)空格:123        end
右對齊,寬度為10,不足補(bǔ)空格:start       123
右對齊,寬度為10,取兩位小數(shù),不足補(bǔ)0:0000022.23

包含知識點(diǎn)

  • <默認(rèn)左對齊可以不用就加
  • 當(dāng)你不指定數(shù)據(jù)類型時(shí),傳什么類型的值都能成功格式化輸出

format,拓展使用

print("總是顯示符號:{:0>+8.2f},{:0>+8.2f}".format(3.14, -3.14))
 
print("百分?jǐn)?shù):{:%} {:.2%}".format(3 / 7, 3 / 7))
 
print("逗號分隔,一般用在金錢 {:,}".format(12345678)

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

總是顯示符號:000+3.14,000-3.14
百分?jǐn)?shù):42.857143% 42.86%
逗號分隔,一般用在金錢 12,345,678

+ 包含知識點(diǎn) 的意義在于,當(dāng)我們輸出的是正數(shù)也能看到符號

%百分?jǐn)?shù)是真的百分?jǐn)?shù),不是單單加個(gè) ;譬如0.25667,變成百分?jǐn)?shù)就是 25.67%

固定隔三位數(shù)字;傳入字符串會報(bào)錯哦

到此這篇關(guān)于詳解Python的字符串格式化的文章就介紹到這了,更多相關(guān)Python字符串格式化內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論