【发布时间】:2012-10-17 09:51:02
【问题描述】:
给定一个字符串s,我想知道字符串中每个字符出现了多少次。代码如下:
def main() :
while True :
try :
line=raw_input('Enter a string: ')
except EOFError :
break;
mp={};
for i in range(len(line)) :
if line[i] in mp :
mp[line[i]] += 1;
else :
mp[line[i]] = 1;
for i in range(len(line)) :
print line[i],': ',mp[line[i]];
if __name__ == '__main__' :
main();
当我运行此代码并输入 abbba 时,我得到:
a : 2
b : 3
b : 3
b : 3
a : 2
我只想得到:
a : 2
b : 3
我理解为什么会发生这种情况,但由于我是 python 新手,我不知道任何其他方法来迭代地图的元素。谁能告诉我该怎么做?提前致谢。
【问题讨论】:
标签: python string map iteration