python遍歷字符串中每一個(gè)字符的4種方式
python遍歷字符串中的每一個(gè)字符有4種方式:
1. for in ;
2.iter內(nèi)置函數(shù);
3.內(nèi)置函數(shù)range()或xrange();
4. enumerate
"for in"和iter適合對(duì)字符進(jìn)行直接處理的一類(lèi)題目,比如大小字母,生僻字替換,字符串對(duì)比之類(lèi)的。
range()或xrange()和enumerate適合需要判斷后續(xù)字符的場(chǎng)景,比如循環(huán)到下標(biāo)index處,要求判斷index+1的字符。最典型的題目就是語(yǔ)法解析器,判斷"(())"這種成對(duì)的括號(hào)的算法。
總之,如果需要用到下標(biāo)就使用range()或xrange()和enumerate,其中enumerate比下標(biāo)法性能更優(yōu)。
(注意:本文基于Python3.x)
第一種方式,for in
girl_str = "love You"
for every_char in girl_str:
print(every_char)結(jié)果:
l
o
v
e
Y
o
u
Process finished with exit code 0
建立字典,將字符串中指定的字符替換成字典中對(duì)應(yīng)的字符。
def jiema(x):
a = {'閏':1, '麣':2, '驋':3, '龤':4, '鑶':5, '龥':6, '餼':7, '鵂':8, '齤':9, '龒':0}
n = ''
for i in x:
if i in a.keys():
i = a[i]
n += str(i)
return n
content = '龒江山待有才人出,各領(lǐng)風(fēng)騷數(shù)百年齤'
print(content)
print(jiema(content))結(jié)果:
龒江山待有才人出,各領(lǐng)風(fēng)騷數(shù)百年齤
0江山待有才人出,各領(lǐng)風(fēng)騷數(shù)百年9
第二種方式,內(nèi)置函數(shù)iter()
girl_str = "love You"
for every_char in iter(girl_str):
print(every_char)結(jié)果同一。
第三種方式,內(nèi)置函數(shù)range()或xrange()。
把字符串長(zhǎng)度傳進(jìn)去就行
girl_str = "love You"
for index in range(len(girl_str)):
print(girl_str[index])結(jié)果同一。
第四種方式,內(nèi)置函數(shù)enumerate()
girl_str = "love You"
for index, every_char in enumerate(girl_str):
print(str(index) + ' '+every_char)結(jié)果:
0 l
1 o
2 v
3 e
4
5 Y
6 o
7 u
總結(jié)
到此這篇關(guān)于python遍歷字符串中每一個(gè)字符的4種方式的文章就介紹到這了,更多相關(guān)python遍歷字符串中字符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
django的安裝和創(chuàng)建應(yīng)用過(guò)程詳解
這篇文章主要介紹了django的安裝和創(chuàng)建應(yīng)用,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07
python中讀入二維csv格式的表格方法詳解(以元組/列表形式表示)
這篇文章主要介紹了python中如何讀入二維csv格式的表格(以元組/列表形式表示),本文通過(guò)兩種方法給大家詳細(xì)介紹,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04

