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