gpt4 book ai didi

python - 查找字符串中出现次数最多的字符

转载 作者:行者123 更新时间:2023-12-04 08:27:16 26 4
gpt4 key购买 nike

这段代码将在一个字符串中找到出现次数最多的 chr ,它几乎可以通过字典正常工作,但不幸的是,问题是当有两个键时,我想让它返回最后一个键相同的频率,但它返回第一个。

这就是我到目前为止所做的:

def most_frequent_letter(s):
st = s.lower().replace(' ', '')
frequencies = {}
for items in st:
if items in frequencies:
frequencies[items] += 1
else:
frequencies[items] = 1

return max(frequencies, key=frequencies.get)




most_frequent_letter('mmmaaa')
Out[48]: 'm'

但是我不知道如何返回 'a' 而不是 'm'。

最佳答案

这是一种创建反向频率字典的方法。我还通过使用 dictionary comprehension 使频率字典及其反向的创建相当简洁。 :

def most_frequent_letter(s):
st = s.lower().replace(' ', '')
frequencies = {}
frequencies = {item: frequencies.setdefault(item, 0) + 1 for item in st}
rev_freq = {count: key for key, count in frequencies.items()}
return rev_freq[max(rev_freq)]

print(most_frequent_letter('nnmmmaaa')) # -> a

关于python - 查找字符串中出现次数最多的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65198754/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com