Python常見(jiàn)函數(shù)與格式化輸出

大小寫(xiě)轉(zhuǎn)換方法

upper()

用于將字符串中的小寫(xiě)字母轉(zhuǎn)為大寫(xiě)字母。

'abcd'.upper()  # 'ABCD'
'aBcD'.upper()  # 'ABCD'

lower()

用于將字符串中的大寫(xiě)字母轉(zhuǎn)為小寫(xiě)字母韭脊。

'ABCD'.lower()  # 'abcd'
'aBcD'.lower()  # 'abcd'

capitalize()

用于將字符串的第一個(gè)字母變成大寫(xiě)网缝,其他字母變小寫(xiě)奠衔。首字符如果是非字母則不變抄谐,其他字母變小寫(xiě)宁赤。

'ABCD'.capitalize()  # 'Abcd'
'aBcD'.capitalize()  # 'Abcd'
'1abcd'.capitalize()  # '1abcd'
'1aBcD'.capitalize()  # '1abcd'

title()

用于返回“標(biāo)題化”的字符串——即所有單詞的首字母轉(zhuǎn)為大寫(xiě)惊畏,其余字母均為小寫(xiě)恶耽。

  • 注意:非字母后的第一個(gè)字母將轉(zhuǎn)為大寫(xiě)字母。
'this is an example string'.title()   # This Is An Example String
'5g is coming'.title()  # 5G Is Coming

swapcase()

用于對(duì)字符串的大小寫(xiě)字母進(jìn)行互相轉(zhuǎn)換颜启。

'abcd'.swapcase()  # 'ABCD'
'aBcD'.swapcase()  # 'AbCd'

我們來(lái)總結(jié)一下:


分割驳棱、組合與移除方法

split()

用于通過(guò)指定分隔符對(duì)字符串進(jìn)行分割。split() 方法有兩個(gè)可選參數(shù)农曲,第一個(gè)參數(shù)為分隔符社搅,默認(rèn)為所有的空字符,包括空格乳规、換行(\n)形葬、制表符(\t)等。第二個(gè)參數(shù)為最大分割次數(shù)暮的,默認(rèn)為 -1笙以,即不限次數(shù)。

'扇 貝 編 程'.split()  # ['扇', '貝', '編', '程']
'扇 貝 編 程'.split(' ')  # ['扇', '貝', '編', '程']
'扇-貝-編-程'.split('-')  # ['扇', '貝', '編', '程']
'扇貝編程'.split('貝編')  # ['扇', '程']
'扇 貝 編 程'.split(' ', 1)  # ['扇', '貝 編 程']

join()

用于將序列中的元素以指定的字符連接生成一個(gè)新的字符串冻辩。join() 方法接收一個(gè)序列(列表猖腕、元組、字符串等)作為參數(shù)恨闪,. 前面的字符串用于連接符倘感。

# 列表
''.join(['扇', '貝', '編', '程'])  # 扇貝編程
'-'.join(['扇', '貝', '編', '程'])  # 扇-貝-編-程
# 元組
'-'.join(('扇', '貝', '編', '程'))  # 扇-貝-編-程
# 字符串
'-'.join('扇貝編程')  # 扇-貝-編-程

strip()

用于移除字符串開(kāi)頭和結(jié)尾指定的字符(默認(rèn)為空字符)或字符序列。當(dāng)傳入一個(gè)字符串時(shí)咙咽,會(huì)將傳入字符串中每個(gè)字符依次移除老玛。

' 扇貝編程  '.strip()  # '扇貝編程'
'~~扇貝編程~~'.strip('~')  # '扇貝編程'
'~~扇貝~~編程~~'.strip('~')  # '扇貝~~編程'
'_~_扇貝編程_~~'.strip('~_')  # '扇貝編程'

定位與替換方法

count()

用于統(tǒng)計(jì)字符串中某個(gè)字符串出現(xiàn)的次數(shù)。第一個(gè)參數(shù)為要統(tǒng)計(jì)次數(shù)的字符串,后兩個(gè)可選參數(shù)為在字符串搜索的開(kāi)始與結(jié)束索引蜡豹。

'aabbcccd'.count('a')  # 2
'aabbcccd'.count('ab')  # 1
'aabbcccd'.count('e')  # 0
'aabbcccd'.count('a', 2, 6)  # 0
# 等同于 'bbcc'.count('a')
'aabbcccd'.count('c', 2, 6)  # 2
# 等同于 'bbcc'.count('c')

find()

用于檢測(cè)字符串中是否包含子字符串麸粮,如果包含子字符串返回第一次出現(xiàn)的索引值,否則返回 -1镜廉。第一個(gè)參數(shù)為要查找的子字符串弄诲,后兩個(gè)可選參數(shù)為在字符串搜索的開(kāi)始與結(jié)束索引。

'abc'.find('b')  # 1
'abcabc'.find('b')  # 1
'abcabc'.find('d')  # -1
'abcbcdabc'.find('bcd')  # 3
'abcabc'.find('b', 1, 2)  # 1
'abcabc'.find('b', 2, 3)  # -1

replace()

用于將字符串中的指定字符串替換成別的字符串娇唯。第一個(gè)參數(shù)為被替換字符串齐遵,第二個(gè)參數(shù)為替換字符串,第三個(gè)可選參數(shù)為替換的最多次數(shù)视乐,默認(rèn)為無(wú)限次洛搀。

'abcd'.replace('b', 'e')  # 'aecd'
'abbbcbd'.replace('b', 'e')  # 'aeeeced'
'abbbcbd'.replace('bb', 'e')  # 'aebcbd'
'abbbcbd'.replace('b', 'e', 2)  # 'aeebcbd'

格式化輸出方法

除了之前說(shuō)的使用 % 運(yùn)算符 進(jìn)行字符串格式化輸出,我們還可以使用字符串的 format() 方法達(dá)到同樣的效果佑淀。

'我叫{}留美,今年 {} 歲,來(lái)自{}'.format('小貝', 18, '南京')
# 我叫小貝伸刃,今年 18 歲谎砾,來(lái)自南京

從上面的例子可以看到,format() 方法使用 {} 作為占位符捧颅,然后按照參數(shù)順序替換對(duì)應(yīng)的占位符景图。

我們還可以給占位符編號(hào):

'我叫{0},今年 {1} 歲碉哑,來(lái)自{2}'.format('小貝', 18, '南京')
# 我叫小貝挚币,今年 18 歲,來(lái)自南京
# 調(diào)整編號(hào)順序
'我叫{2}扣典,今年 {1} 歲妆毕,來(lái)自{0}'.format('南京', 18, '小貝')
# 我叫小貝,今年 18 歲贮尖,來(lái)自南京
# 重復(fù)編號(hào)
'我叫{0}笛粘,{0}今年 {1} 歲,來(lái)自{2}'.format('小貝', 18, '南京')
# 我叫小貝湿硝,小貝今年 18 歲薪前,來(lái)自南京

我們還可以給占位符命名:

'我叫{name},今年 {age} 歲关斜,來(lái)自{city}'.format(name = '小貝', age = 18, city = '南京')
# 我叫小貝示括,今年 18 歲,來(lái)自南京

# 命名后參數(shù)順序不再重要
'我叫{name}蚤吹,今年 {age} 歲例诀,來(lái)自{city}'.format(age = 18, city = '南京', name = '小貝')
# 我叫小貝随抠,今年 18 歲裁着,來(lái)自南京
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末繁涂,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子二驰,更是在濱河造成了極大的恐慌扔罪,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件桶雀,死亡現(xiàn)場(chǎng)離奇詭異矿酵,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)矗积,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén)全肮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人棘捣,你說(shuō)我怎么就攤上這事辜腺。” “怎么了乍恐?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵评疗,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我茵烈,道長(zhǎng)百匆,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任呜投,我火速辦了婚禮加匈,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘仑荐。我一直安慰自己雕拼,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布释漆。 她就那樣靜靜地躺著悲没,像睡著了一般。 火紅的嫁衣襯著肌膚如雪男图。 梳的紋絲不亂的頭發(fā)上示姿,一...
    開(kāi)封第一講書(shū)人閱讀 48,970評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音逊笆,去河邊找鬼栈戳。 笑死,一個(gè)胖子當(dāng)著我的面吹牛难裆,可吹牛的內(nèi)容都是我干的子檀。 我是一名探鬼主播镊掖,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼褂痰!你這毒婦竟也來(lái)了亩进?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤缩歪,失蹤者是張志新(化名)和其女友劉穎归薛,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體匪蝙,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡主籍,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了逛球。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片千元。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖颤绕,靈堂內(nèi)的尸體忽然破棺而出幸海,到底是詐尸還是另有隱情,我是刑警寧澤屋厘,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布涕烧,位于F島的核電站,受9級(jí)特大地震影響汗洒,放射性物質(zhì)發(fā)生泄漏议纯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一溢谤、第九天 我趴在偏房一處隱蔽的房頂上張望瞻凤。 院中可真熱鬧,春花似錦世杀、人聲如沸阀参。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)蛛壳。三九已至,卻和暖如春所刀,著一層夾襖步出監(jiān)牢的瞬間衙荐,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工浮创, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留忧吟,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓斩披,卻偏偏與公主長(zhǎng)得像溜族,于是被迫代替她去往敵國(guó)和親讹俊。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容