Python?創(chuàng)建格式化字符串方法
格式化字符串
當(dāng)我們需要?jiǎng)?chuàng)建文本或文檔時(shí),我們往往希望能夠?qū)⒅嫡_格式化為結(jié)構(gòu)化字符串。 Python
提供了多種選項(xiàng)用于正確對(duì)字符串進(jìn)行格式化并呈現(xiàn)。本節(jié),我們將介紹創(chuàng)建格式化文本時(shí)的一些常用選項(xiàng)。
Format 方法
在 Python 通常使用format方法格式化字符串,通常使用以下方式利用 format
方法顯示變量:
result = template.format(*parameters)
其中,模板 (template
) 是一個(gè)需要使用變量進(jìn)行解釋的字符串。在最簡(jiǎn)單的情況下,模板將大括號(hào)之間的值替換為 parameters
變量值,為了更好的理解,
我們查看以下簡(jiǎn)單示例:
>>> 'My name is {}'.format('Brainiac') 'My name is Brainiac' >>> 'The price of ({}) is {}'.format('apple',6.28) 'The price of (apple) is 6.28' >>> 'And all of that happens in the {1} {0}.'.format('second','first') 'And all of that happens in the first second.' >>> 'The {fruit} should be eaten within {number} days.'.format(number=3, fruit='banana') 'The banana should be eaten within 3 days.'
在絕大多數(shù)情況下,我們只需要這種格式就能應(yīng)對(duì)。但是對(duì)于復(fù)雜情況,例如自動(dòng)對(duì)齊字符串和創(chuàng)建排版美觀的文本時(shí),format
方法也提供了更多的選擇。
接下來(lái),我們編寫腳本 format_string.py
來(lái)打印需要對(duì)齊的表格:
# 輸入數(shù)據(jù) data = [ ????(1615.8, 1604.1), ????(183.3, 152.8), ????(1254.9, 1308.1), ????(155.4, 161.0), ] # 表頭 print(' Q1 FY21 | ?Q1 FY22 | ?Change') # 以正確的格式對(duì)齊和顯示數(shù)據(jù) TEMPLATE = '{fy21:>+8,} | {fy22:>+8} | {change:>8.3}' # 打印數(shù)據(jù) for fy21, fy22 in data: ????row = TEMPLATE.format(fy21=fy21, fy22=fy22, change=fy22 - fy21) ????print(row)
運(yùn)行以上腳本以顯示對(duì)齊后的表格:
$ python format_string.py ?Q1 FY21 | ?Q1 FY22 | ? Change +1,615.8 | ?+1604.1 | ???-11.7 ??+183.3 | ??+152.8 | ???-30.5 +1,254.9 | ?+1308.1 | ????53.2 ??+155.4 | ??+161.0 | ?????5.6
在以上腳本中,使用 TEMPLATE
常量定義了一個(gè)具有三列的表格,每一列由一個(gè)名為 fy21
、fy22
和 change
的參數(shù)定義,便于將模板應(yīng)用于格式調(diào)用。
用于定義格式所有內(nèi)容都在大括號(hào)內(nèi)。在參數(shù)名稱之后,使用一個(gè)冒號(hào)分隔格式定義,在所有列中,我們都將寬度設(shè)置為8
個(gè)字符,以確保所有列具有相同的寬度,并使用 > 符號(hào)將值向右對(duì)齊:
Fy21
帶有 “,
” 符號(hào)的作為千位分隔符 ——{fy21:>+8,}
Fy21
和fy22為正值,因此使用 “+
” 號(hào)用于自動(dòng)添加數(shù)值符號(hào) ——{fy21:>+8,}
、{fy22:>+8}
Change
使用 “.
” 符號(hào)來(lái)聲明顯示精度 ——{change:>8.3}
其它格式化字符串方法
有時(shí),我們還可能還看到過使用%
運(yùn)算符的來(lái)設(shè)置Python
格式,但它不如format
方法靈活,因此,已不推薦使用。
此外,自Python 3.6
以來(lái)Python
中新增了一個(gè)很棒的特性是使用f-strings
進(jìn)行格式化,它使用定義的變量執(zhí)行格式化操作:
>>> p1 = 'first' >>> p2 = 'second' >>> f'And all of that happens in the {p1} {p2}.' 'And all of that happens in the first second.'
使用這種特性可以簡(jiǎn)化很多代碼,并允許我們創(chuàng)建非常具有可讀性的代碼。
到此這篇關(guān)于Python 創(chuàng)建格式化字符串方法的文章就介紹到這了,更多相關(guān)Python 格式化字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python字符串格式化format()方法運(yùn)用實(shí)例
- 深入了解Python中字符串格式化工具f-strings的使用
- 詳解Python的字符串格式化
- Python中格式化字符串輸出的4種方式小結(jié)
- Python字符串類型及格式化問題
- python使用?f?格式化字符串的用法
- Python字符串格式化實(shí)例講解
- Python格式化字符串f-string的使用教程
- Python格式化輸出字符串的五種方法總結(jié)
- 詳解Python數(shù)據(jù)類型、進(jìn)制轉(zhuǎn)換、字符串格式化的問題
- python字符串格式化函數(shù)
- python實(shí)現(xiàn)三種字符串格式化方法(%、format、f-string)
相關(guān)文章
Python 模擬生成動(dòng)態(tài)產(chǎn)生驗(yàn)證碼圖片的方法
這篇文章主要介紹了Python 模擬生成動(dòng)態(tài)產(chǎn)生驗(yàn)證碼圖片的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02python使用openpyxl庫(kù)讀寫Excel表格的方法(增刪改查操作)
這篇文章主要介紹了python使用openpyxl庫(kù)讀寫Excel表格的方法(增刪改查操作),本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-05-05Django的restframework接口框架自定義返回?cái)?shù)據(jù)格式的示例詳解
這篇文章主要介紹了Django的restframework接口框架自定義返回?cái)?shù)據(jù)格式,本文介紹了通過Django的restframework接口框架自定義Response返回對(duì)象來(lái)自定義返回?cái)?shù)據(jù)格式,本文通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07Pycharm出現(xiàn)卡頓、反應(yīng)慢及CPU占用高等問題解決
相信很多剛開始使用pycharm不太熟練的小伙伴,每天一開機(jī)打開pycharm總是卡半天,不知道的還以為是電腦卡了或者啥問題的,下面這篇文章主要給大家介紹了關(guān)于Pycharm出現(xiàn)卡頓、反應(yīng)慢及CPU占用高等問題解決的相關(guān)資料,需要的朋友可以參考下2023-06-06python3實(shí)現(xiàn)raspberry pi(樹莓派)4驅(qū)小車控制程序
這篇文章主要為大家詳細(xì)介紹了python3實(shí)現(xiàn)raspberry pi(樹莓派)4驅(qū)小車控制程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02Python使用Pandas處理測(cè)試數(shù)據(jù)的方法
Pandas是一個(gè)功能極其強(qiáng)大的數(shù)據(jù)分析庫(kù),可以高效地操作各種數(shù)據(jù)集,這篇文章主要介紹了Python自動(dòng)化測(cè)試-使用Pandas來(lái)高效處理測(cè)試數(shù)據(jù),需要的朋友可以參考下2023-02-02