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