首页 > 解决方案 > 如何检查字典中是否存在具有特定模式的值?

问题描述

我想在字典中找到前 N 个字符与另一个字符串相同的值。

例如:

我想获取前 4 个字符为“abcd”的所有值并返回其键

string = "abcd"

dict = {'k1' : 'abcd4545', 'k2' : 'abab1234', 'k3' : 'abcd789456'}

结果:应该返回 k1 和 k3

我认为可以通过循环字典中的所有值并获取前 N 个字符进行比较来完成。

但是我需要处理一个包含大量数据的字典,有没有更好的方法来做到这一点?

标签: pythondictionary

解决方案


不,除了迭代值并检查条件之外没有其他解决方案,可以通过列表理解来实现循环:

[k for k, v in dict.items() if v.startswith(string)]

推荐阅读