Python格式化輸出之format用法詳解
format用法
相對基本格式化輸出采用‘%’的方法,format()功能更強大,該函數(shù)把字符串當成一個模板,通過傳入的參數(shù)進行格式化,并且使用大括號‘{}’作為特殊字符代替‘%’
使用方法由兩種:b.format(a)和format(a,b)。
一、填充
1.無參(1)
print('{} {}'.format('hello','world'))
hello world
2.無參(2)
print('{0} {1}'.format('hello','world'))
hello world
3.無參(3)
print('{1} {0} {1}'.format('hello','world'))
world hello world
4.key value
print('ID:{id},Name:{name}'.format(id='001',name='hello'))
ID:001,Name:hello
5.列表
list=['001','hello']
print('ID:{List[0]},Name:{List[1]}'.format(List = list))
print('ID:{0[0]},Name:{0[1]}'.format(list))
ID:001,Name:hello
ID:001,Name:hello
6.字典
dict={'id':'001,'name':'hello'}
print('ID:{Dict[0]},Name:{Dict[1]}'.format(Dict = dict))
print('ID:{id},Name:{name}'.format(**dict))
ID:001,Name:hello
ID:001,Name:hello
7.類
class value():
id = '001'
name = 'hello'
print('ID:{Value.id},Name{Value.name}'.format(Value = value))
ID:001,Name:hello
8.魔法參數(shù)
*args表示任何多個無名參數(shù),它是一個tuple or list;**kwargs表示關鍵字參數(shù),它是一個 dict。
args = [',','.']
kwargs = {'id': '001','name':'hello'}
print('ID:{id}{}Name:{name}{}'.format(*args, **kwargs))
ID:001,Name:hello.
二、數(shù)字格式化
| 數(shù)字 | 格式 | 輸出 | 描述 |
|---|---|---|---|
| 3.1415926 | {:.2f} | 3.14 | 保留小數(shù)點后兩位 |
| 3.1415926 | {:+.2f} | +3.14 | 帶符號保留小數(shù)點后兩位 |
| -1 | {:+.2f} | -1.00 | 帶符號保留小數(shù)點后兩位 |
| 2.71828 | {:.0f} | 3 | 不帶小數(shù) |
| 5 | {:0>2d} | 05 | 數(shù)字補零 (填充左邊, 寬度為2) |
| 5 | {:x<4d} | 5xxx ) | 數(shù)字補x (填充右邊, 寬度為4 |
| 10 | {:x<4d} | 10xx ) | 數(shù)字補x (填充右邊, 寬度為4 |
| 1000000 | {:,} | 1,000,000 | 以逗號分隔的數(shù)字格式 |
| 0.25 | {:.2%} | 25.00% | 百分比格式 |
| 1000000000 | {:.2e} | 1.00e+09 | 指數(shù)記法 |
| 13 | {:>10d} | 13 | 右對齊 (默認, 寬度為10) |
| 13 | {:<10d} | 13 | 左對齊 (寬度為10) |
| 13 | {:^10d} | 13 | 中間對齊 (寬度為10) |
| 11 | ‘{:b}’.format(11) | 1011 | 二進制 |
| 11 | ‘{:d}’.format(11) | 11 | 十進制 |
| 11 | ‘{:o}’.format(11) | 13 | 八進制 //這里打成中文的冒號了,因為用英文的會打出一個O的表情~~~ |
| 11 | ‘{:x}’.format(11) | b | 十六進制 |
| 11 | ‘{:#x}’.format(11) | 0xb | 0x式十六進制+小寫 |
| 11 | ‘{:#X}’.format(11) | 0xB | 0x式十六進制+大寫 |
三、嘆號用法
print(‘{!s}好'.format(‘你'))
print(‘{!r}好'.format(‘你'))
print(‘{!a}好'.format(‘你'))
你好
’你’好
’\u4f60’好
!后面可以加s r a 分別對應str() repr() ascii() 作用是在填充前先用對應的函數(shù)來處理參數(shù)
差別就是
str()是面向用戶的,目的是可讀性,
repr()帶有引號,
ascii()是面向Python解析器的,返回值表示在python內(nèi)部的含義,ascii (),返回ascii編碼
總結
到此這篇關于Python格式化輸出之format用法的文章就介紹到這了,更多相關Python格式化輸出format內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
使用python+pygame開發(fā)消消樂游戲附完整源碼
消消樂小游戲相信大家都玩過,大人小孩都喜歡玩的一款小游戲,那么基于程序是如何實現(xiàn)的呢?今天帶大家,用python+pygame來實現(xiàn)一下這個花里胡哨的消消樂小游戲功能,感興趣的朋友一起看看吧2021-06-06
Python爬蟲教程之利用正則表達式匹配網(wǎng)頁內(nèi)容
這篇文章主要給大家介紹了關于Python爬蟲教程之利用正則表達式匹配網(wǎng)頁內(nèi)容的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12
PyQt通過動畫實現(xiàn)平滑滾動的QScrollArea
這篇文章主要為大家詳細介紹了PyQt如何使用Qt的動畫框架 QPropertyAnimation來實現(xiàn)平滑滾動的QScrollArea,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的可以學習一下2023-01-01
基于Python+Matplotlib繪制漸變色扇形圖與等高線圖
這篇文章主要為大家介紹了如何利用Python中的Matplotlib繪制漸變色扇形圖與等高線圖,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下方法2022-04-04

