python字符串的格式化輸出


字符串格式化輸出可以很方便地對字符串進行處理,同時解決字符串和變量同時輸出的問題。也使得代碼更具可讀性。例如:

點擊查看代碼
xing='李'
ming='北群'
result=f'{xing}{ming}'
print(result)
'''
李北群
'''

在python 3.5以及更早的版本,我們使用format()方法。python 3.6則引入了f字符串方法。

1.format方法

  1. 基本用法

<字符串>.format(<以逗號分隔的參數>)

字符串中帶有一系列待填充槽,用大括號{}表示,括號里帶有序號。該方法將參數按序號填充到槽里,返回一個新字符串。如果槽中沒有序號,則按順序填充。

槽的序號順序可以自己指定(從0開始),參數的序號從零開始。

 

點擊查看代碼
x='{1} > {0} > {2}'.format('A','B','C')
print(x)

'''
B > A > C
'''

也可以設置參數。比如'{x}'.format(x='libeiqun')。參數還可以通過列表和字典來設置。

 

點擊查看代碼
x='{x} is a {y}'.format(x='tom',y='boy')
print(x)
'''
tom is boy
'''

temp={'x':'li','y':'bei','z':'qun'}
x='{x} {y}{z}'.format(**temp)
print(x)

'''
li beiqun
'''

      2.槽內格式控制

槽內除了參數序號,還可以包括格式控制符,用來對填充參數進行處理。

格式為:{<參數序號(可不填)>:<格式控制符>}。格式控制符可分為以下幾種:

  • 空白填充:僅單個字符
  • 對齊:<左對齊     >右對齊     ^居中對齊
  • 設置寬度:設置返回字符串的長度
  • 分隔符:用於整數和浮點數,對參數加入千位分隔符。
  • 設置精度:設置浮點數的小數部分進行有效位數保留,或設置字符串的最大輸出長度。
  • 類型:設置整數和浮點數的輸出格式。

對於整數:b:轉為二進制  c:Unicode字符  d:十進制  o:八進制  x:小寫十六進制  X:大寫十六進制。

對於浮點數:e:輸出浮點數的e指數格式  E:E指數格式  f:標准浮點數格式  %:輸出百分比格式

輸出浮點數常用<.精度>對小數部分進行取精度。

 

空白填充,對齊,設置寬度是相關字段。設置寬度指定返回字符串的長度;對齊指定左右中對齊方式;空白填充指定多余的字段用什么字符進行填充。它們往往組合調用。

 

點擊查看代碼
x='{:*^15}'.format('hello')
print(x)
'''
*****hello*****
'''

print('{x:-^30.5}'.format(x='nuisting'))
'''
------------nuist-------------
'''

分隔符:

點擊查看代碼

點擊查看代碼
x='{:*<20,}'.format(1256554562)
print(x)
'''
1,256,554,562*******
'''

精度設置:

點擊查看代碼
x='{:.3f}'.format(3.1415926)
print(x)
'''
3.142
'''

x='{:-^30.5}'.format('republic')
print(x)
'''
------------repub-------------
'''

 類型:

點擊查看代碼
x='{a:b} {a:c} {a:d} {a:o} {a:x} {a:X}'.format(a=38845)
print(x)
'''
1001011110111101 鞽 38845 113675 97bd 97BD

'''

x='{a:e} {a:E} {a:f} {a:%}'.format(a=3.1415926)
print(x)
'''
3.141593e+00 3.141593E+00 3.141593 314.159260%
'''

2.f字符串

f字符串方法與format並無太大區別。

點擊查看代碼
x='university'
print(f'{"nuist":*^15} is our {x}')
'''
*****nuist***** is our university
'''


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM