在我的程序中,当用户输入一个单词时,需要检查相同的字母。
例如,在string = "hello"
中,你好有2'l'。我如何在python程序中检查这个?
答案 0 :(得分:1)
使用Counter
对象计算字符数,返回计数超过1的字符。
from collections import Counter
def get_duplicates(string):
c = Counter(string)
return [(k, v) for k, v in c.items() if v > 1]
In [482]: get_duplicates('hello')
Out[482]: [('l', 2)]
In [483]: get_duplicates('helloooo')
Out[483]: [('l', 2), ('o', 4)]
答案 1 :(得分:0)
您可以使用
完成此操作d = defaultdict(int)
def get_dupl(some_string):
# iterate over characters is some_string
for item in some_string:
d[item] += 1
# select all characters with count > 1
return dict(filter(lambda x: x[1]>1, d.items()))
print(get_dupl('hellooooo'))
产生
{'l': 2, 'o': 5}