python遍历字符串中的每个字符有4种方法:
1. for in ;
2.iter内置函数;
3.内置函数range()或xrange();
4. enumerate
for in和iter合适对字符进行直接处置的一类题目,譬如大小字母,生僻字替换,字符串对比之类的。
range()或xrange()和enumerate合适需要判断后续字符的场景,譬如循环到下标index处,需要判断index+1的字符。最典型的题目就是语法分析器,判断(())这种成对的括号的算法。
总之,假如需要用到下标就用range()或xrange()和enumerate,其中enumerate比下标法性能更优。
(注意:本文基于Python3.x)
第一种方法,for ingirl_str=loveYouforevery_charingirl_str:print(every_char)
结果:
l
o
v
e
Y
o
u
Process finished with exit code 0
打造字典,将字符串中指定的字符替换成字典中对应的字符。
defjiema(x):a={閏:1,麣:2,驋:3,龤:4,鑶:5,龥:6,餼:7,鸺:8,齤:9,龒:0}n=foriinx:ifiina.keys():i=a[i]n+=str(i)returnncontent=龒江山待有才人出,各领妖娆数百年齤print(content)print(jiema(content))
结果:
第二种方法,内置函数iter()龒江山待有才人出,各领妖娆数百年齤
0江山待有才人出,各领妖娆数百年9
girl_str=loveYouforevery_chariniter(girl_str):print(every_char)
结果同一。
第三种方法,内置函数range()或xrange()。把字符串长度传进来就好
girl_str=loveYouforindexinrange(len(girl_str)):print(girl_str[index])
结果同一。
第四种方法,内置函数enumerate()girl_str=loveYouforindex,every_charinenumerate(girl_str):print(str(index)++every_char)
结果:
0 l
1 o
2 v
3 e
4
5 Y
6 o
7 u






