在Python中,检查哪个键在其字典中拥有最多的字母

2022-01-30 10:10:58 标签 pythondictionarykey

我在Python代码中有一个像这样的字典:

S = {(x0): 'omicron', (x1): 'a', (x2): 'ab', (x3): 'abbr', (x4): 'abr', (x5): 'abrf', (x6): 'abrfa', (x7): 'af', '(x8)': 'afc'}

我想检查哪个键有其对应的字典与字母的最高数量,除了一个有“omicron”。这个例子中的答案应该是:(x6)因为它有一个比任何其他键多5个字母的字典,不计算(x0):'omicron'。

有没有一种有效的方法来做到这一点?谢谢你!

###你可以使用max的关键参数:

res = max(S, key=lambda x: (S[x] != 'omicron', len(S[x])))
print(res)

输出

(x6)

这将使值不同于'omicron'的键值大于等于(1 >0)。对于那些没有'omicron'值的键,使用长度作为tie-breaker。

###

S = {('x0'): 'omicron', ('x1'): 'a', ('x2'): 'ab', ('x3'): 'abbr', ('x4'): 'abr', ('x5'): 'abrf', ('x6'): 'abrfa', ('x7'): 'af', ('x8'): 'afc'}

键=列表(S。keys ())

最长= 0

词= "

For I in range(len(keys)):

如果len (S [f '{键[我]}'])的在S[f'{keys[i]}'] != 'omicron':

最长= len (S [f '{键[我]}'])

词=键[我]

打印(最长单词)

输出:

5 x6
阅读全文

▼ 版权说明

相关文章也很精彩
推荐内容
更多标签
相关热门
全站排行
随便看看

错说 cuoshuo.com —— 程序员的报错记录

部分内容根据CC版权协议转载;网站内容仅供参考,生产环境使用务必查阅官方文档

辽ICP备19011660号-5

×

扫码关注公众号:职场神器
发送: 1
获取永久解锁本站全部文章的验证码