溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python中字符串格式化%s%d%f的示例分析

發(fā)布時間:2021-08-03 11:56:52 來源:億速云 閱讀:135 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹Python中字符串格式化%s%d%f的示例分析,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

python輸出99乘法表:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
for i in range(1, 10):
  print 
  for j in range(1, i+1):
    print "%d*%d=%d" % (i, j, i*j),

結(jié)果:

1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
>>>

下面我們就來研究下字符串輸出格式化的具體內(nèi)容。

%s 字符串

string="hello"  
  
#%s打印時結(jié)果是hello  
print "string=%s" % string   # output: string=hello  
  
#%2s意思是字符串長度為2,當(dāng)原字符串的長度超過2時,按原長度打印,所以%2s的打印結(jié)果還是hello  
print "string=%2s" % string   # output: string=hello  
  
#%7s意思是字符串長度為7,當(dāng)原字符串的長度小于7時,在原字符串左側(cè)補(bǔ)空格,  
#所以%7s的打印結(jié)果是 hello  
print "string=%7s" % string   # output: string= hello  
  
#%-7s意思是字符串長度為7,當(dāng)原字符串的長度小于7時,在原字符串右側(cè)補(bǔ)空格,  
#所以%-7s的打印結(jié)果是 hello  
print "string=%-7s!" % string   # output: string=hello !  
  
#%.2s意思是截取字符串的前2個字符,所以%.2s的打印結(jié)果是he  
print "string=%.2s" % string  # output: string=he  
  
#%.7s意思是截取字符串的前7個字符,當(dāng)原字符串長度小于7時,即是字符串本身,  
#所以%.7s的打印結(jié)果是hello  
print "string=%.7s" % string  # output: string=hello  
  
#%a.bs這種格式是上面兩種格式的綜合,首先根據(jù)小數(shù)點后面的數(shù)b截取字符串,  
#當(dāng)截取的字符串長度小于a時,還需要在其左側(cè)補(bǔ)空格  
print "string=%7.2s" % string  # output: string=   he  
print "string=%2.7s" % string  # output: string=hello  
print "string=%10.7s" % string # output: string=   hello  
  
#還可以用%*.*s來表示精度,兩個*的值分別在后面小括號的前兩位數(shù)值指定  
print "string=%*.*s" % (7,2,string)   # output: string=   he

%d 整型

num=14  
  
#%d打印時結(jié)果是14  
print "num=%d" % num      # output: num=14  
  
#%1d意思是打印結(jié)果為1位整數(shù),當(dāng)整數(shù)的位數(shù)超過1位時,按整數(shù)原值打印,所以%1d的打印結(jié)果還是14  
print "num=%1d" % num      # output: num=14  
  
#%3d意思是打印結(jié)果為3位整數(shù),當(dāng)整數(shù)的位數(shù)不夠3位時,在整數(shù)左側(cè)補(bǔ)空格,所以%3d的打印結(jié)果是 14  
print "num=%3d" % num      # output: num= 14  
  
#%-3d意思是打印結(jié)果為3位整數(shù),當(dāng)整數(shù)的位數(shù)不夠3位時,在整數(shù)右側(cè)補(bǔ)空格,所以%3d的打印結(jié)果是14_  
print "num=%-3d" % num     # output: num=14_  
  
#%05d意思是打印結(jié)果為5位整數(shù),當(dāng)整數(shù)的位數(shù)不夠5位時,在整數(shù)左側(cè)補(bǔ)0,所以%05d的打印結(jié)果是00014  
print "num=%05d" % num     # output: num=00014  
  
#%.3d小數(shù)點后面的3意思是打印結(jié)果為3位整數(shù),  
#當(dāng)整數(shù)的位數(shù)不夠3位時,在整數(shù)左側(cè)補(bǔ)0,所以%.3d的打印結(jié)果是014  
print "num=%.3d" % num     # output: num=014  
  
#%.0003d小數(shù)點后面的0003和3一樣,都表示3,意思是打印結(jié)果為3位整數(shù),  
#當(dāng)整數(shù)的位數(shù)不夠3位時,在整數(shù)左側(cè)補(bǔ)0,所以%.3d的打印結(jié)果還是014  
print "num=%.0003d" % num    # output: num=014  
  
#%5.3d是兩種補(bǔ)齊方式的綜合,當(dāng)整數(shù)的位數(shù)不夠3時,先在左側(cè)補(bǔ)0,還是不夠5位時,再在左側(cè)補(bǔ)空格,  
#規(guī)則就是補(bǔ)0優(yōu)先,最終的長度選數(shù)值較大的那個,所以%5.3d的打印結(jié)果還是 014  
print "num=%5.3d" % num     # output: num= 014  
  
#%05.3d是兩種補(bǔ)齊方式的綜合,當(dāng)整數(shù)的位數(shù)不夠3時,先在左側(cè)補(bǔ)0,還是不夠5位時,  
#由于是05,再在左側(cè)補(bǔ)0,最終的長度選數(shù)值較大的那個,所以%05.3d的打印結(jié)果還是00014  
print "num=%05.3d" % num    # output: num=00014  
  
#還可以用%*.*d來表示精度,兩個*的值分別在后面小括號的前兩位數(shù)值指定  
#如下,不過這種方式04就失去補(bǔ)0的功能,只能補(bǔ)空格,只有小數(shù)點后面的3才能補(bǔ)0  
print "num=%*.*d" % (04,3,num) # output: num= 014

%f 浮點型

import math  
  
#%a.bf,a表示浮點數(shù)的打印長度,b表示浮點數(shù)小數(shù)點后面的精度  
  
#只是%f時表示原值,默認(rèn)是小數(shù)點后5位數(shù)  
print "PI=%f" % math.pi       # output: PI=3.141593  
  
#只是%9f時,表示打印長度9位數(shù),小數(shù)點也占一位,不夠左側(cè)補(bǔ)空格  
print "PI=%9f" % math.pi      # output: PI=_3.141593  
  
#只有.沒有后面的數(shù)字時,表示去掉小數(shù)輸出整數(shù),03表示不夠3位數(shù)左側(cè)補(bǔ)0  
print "PI=%03.f" % math.pi     # output: PI=003  
  
#%6.3f表示小數(shù)點后面精確到3位,總長度6位數(shù),包括小數(shù)點,不夠左側(cè)補(bǔ)空格  
print "PI=%6.3f" % math.pi     # output: PI=_3.142  
  
#%-6.3f表示小數(shù)點后面精確到3位,總長度6位數(shù),包括小數(shù)點,不夠右側(cè)補(bǔ)空格  
print "PI=%-6.3f" % math.pi     # output: PI=3.142_  
  
#還可以用%*.*f來表示精度,兩個*的值分別在后面小括號的前兩位數(shù)值指定  
#如下,不過這種方式06就失去補(bǔ)0的功能,只能補(bǔ)空格  
print "PI=%*.*f" % (06,3,math.pi)  # output: PI=_3.142

以上是“Python中字符串格式化%s%d%f的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI