Python中內置的%操作符和format函數,都可以用於格式化字符串
1、%操作符的使用
- %o:oct,八進制
- %d:dec,十進制
- %x:hex,十六進制
- %f:保留小數點后6位有效數字。如果是%.3f則保留3位小數
- %e:保留小數點后6位有效數字,按指數形式輸出,如果是%.3e則保留3位小數位,使用科學記數法
- %g:如果有6位有效數字,則使用小數方式,否則使用科學記數法,如果是%.3g,則保留3位有效數字,使用小數方式或科學記數法
- %s:字符串
- %10s:右對齊,占位符10位
- %10s:左對齊,占位符10位
- %.2s:截取兩位字符串
- %10.2s:10位占位符,截取兩位字符串
- \:續行符
- \\:反斜杠
- \':單引號
- \":雙引號
print('十的八進制:%o' % 10) print('十的十進制:%d' % 10) print('十的十六進制:%x' % 10) print('保留兩位小數:%.2f' % 18.29854) print('科學計數法保留兩位小數:%.2e' % 18.29854) print('有20個占位符並且右對齊:%20s' % 'hello world 您好啊') print('20個占位符,截取2位字符串:%20.2s' % 'you are my good friend') print('截取8個字符:%.8s' % 'hello world')
2、format()方法
format()方法更強大,該方法把字符串當成一個模板,通過傳入的參數進行格式化,並且使用大括號“{}”作為特殊字符代替“%”
- 不帶編號的“{}”
- 帶數字編號,可以調換顯示的順序“{1}”“{3}”
- 帶關鍵字的,如“{key}”,“{value}”
print('不帶編號輸出:{} {}'.format('hello', 'world')) print('帶編號輸出:{1} {2}'.format('hello', 'world', '你好')) print('帶編號打亂順序輸出:{1} {0} {1}'.format('hello', 'world')) print('帶關鍵字輸出:{a} {b} {a}'.format(a='hello', b='world'))