python 字符串格式化format


通過{}和:來代替傳統%方式
 
1、位置參數
位置參數不受順序約束,且可以為{},只要format里有相對應的參數值即可,參數索引從0開,傳入位置參數列表可用*列表
1 >>> li = ['jack',18]
2 >>> 'my name is {} ,age {}'.format('jack',18)
3 'my name is jack ,age 18'
4 >>> 'my name is {1} ,age {0}'.format(10,'jack')
5 'my name is jack ,age 10'
6 >>> 'my name is {1} ,age {0} {1}'.format(10,'jack')
7 'my name is jack ,age 10 jack'
8 >>> 'my name is {} ,age {}'.format(*li)
9 'my name is jack ,age 18'
 
2、關鍵字參數
關鍵字參數值要對得上,可用字典當關鍵字參數傳入值,字典前加**即可
1 >>> hash = {'name':'jack','age':18}
2 >>> 'my name is {name},age is {age}'.format(name='jack',age=19)
3 'my name is jack,age is 19'
4 >>> 'my name is {name},age is {age}'.format(**hash)
5 'my name is jack,age is 18'
 
3、填充與格式化
:[填充字符][對齊方式 <^>][寬度]
1 >>> '{0:*>10}'.format(10)  ##右對齊
2 '********10'
3 >>> '{0:*<10}'.format(10)  ##左對齊
4 '10********'
5 >>> '{0:*^10}'.format(10)  ##居中對齊
6 '****10****'
 
4、精度與進制
 1 >>> '{0:.2f}'.format(1/3)
 2 '0.33'
 3 >>> '{0:b}'.format(10)    #二進制
 4 '1010'
 5 >>> '{0:o}'.format(10)     #八進制
 6 '12'
 7 >>> '{0:x}'.format(10)     #16進制
 8 'a'
 9 >>> '{:,}'.format(12369132698)  #千分位格式化
10 '12,369,132,698'
 
5、使用索引
1 >>> li
2 ['jack', 18]
3 >>> 'name is {0[0]} age is {0[1]}'.format(li)
4 'name is jack age is 18

 

 

 

 


免責聲明!

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



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