一、%格式化字符串
1、字符串格式代碼

2、常用轉義字符

3、實例
# %s表示字符串,%d表示整數類型,%f表示浮點類型的數字
info='我叫%s,你叫%s,他叫%s,今年是%d年'%('劉德華','張學友','郭富城',2020)
print(info) #我叫劉德華,你叫張學友,他叫郭富城,今年是2020年
#補位數,當位數不足時,可以通過規定數字的長度進行補空格操作;比如設置數字為n,當輸入的位數只有m位(m<n)時,則補n-m位空格;如果m>n,則正常顯示所有字符
#對於數字而言,還可以根據需要在左側補0
info='我叫%5s,你叫%5s,他叫%05s,今年是%05d年'%('劉德華特洛夫斯基','張學友','郭富城',20)
print(info) #我叫劉德華特洛夫斯基,你叫 張學友,他叫 郭富城,今年是00020年
# 上述方法默認所有的字符都是右對齊,如果需要左對齊,那么加上一個負號.
info='我叫%-5s,你叫%-5s,他叫%-5s,今年是%-05d年'%('劉德華','張學友','郭富城',20)
print(info) #我叫劉德華 ,你叫張學友 ,他叫郭富城 ,今年是20 年(!!!無法進行補0操作)
小數保留位數:
>>> print('%f' % 1.11) # 默認保留6位小數
1.110000
>>> print('%.1f' % 1.11) # 取1位小數
1.1
>>> print('%e' % 1.11) # 默認6位小數,用科學計數法
1.110000e+00
>>> print('%.3e' % 1.11) # 取3位小數,用科學計數法
1.110e+00
>>> print('%g' % 1111.1111) # 默認6位有效數字
1111.11
>>> print('%.7g' % 1111.1111) # 取7位有效數字
1111.111
>>> print('%.2g' % 1111.1111) # 取2位有效數字,自動轉換為科學計數法
1.1e+03
二、str.format()格式化字符串
常規用法
name1='world'
name2='test'
print("hello,{},{}".format(name1,name2))# hello,world,test
通過位置訪問:
print("hello,{2}, {1}, {0}".format('a', 'b', 'c')) #hello,c, b, a
通過關鍵字訪問:
print('Hello {name1},{name2},{name3}'.format(name1='testerzhang',name3="testerli",name2="testerwu") )
#Hello testerzhang,testerwu,testerli
dict={"name1":"testerzhang","name3":"testerli","name2":"testerwu"}
print("Hello {name1},{name2},{name3}".format(**dict)) #Hello testerzhang,testerwu,testerli
三、f-string格式化字符串
Python3.6 版本開始出現了此新的格式化字符串,性能又優於前面兩種方式
name1="world"
name2="test"
print(f"hello,{name1},{name2}") #hello,world,test
print(f"hello,{name1.upper()},{name2.upper()}") #hello,WORLD,TEST
