import re
[v for k, v in my_dict.items() if re.match('key_.*_string', k)]
您甚至可以创建自己的类来为您执行以下操作:
class FuzzyDict(dict):
def fetch(self, pattern):
p = re.compile(pattern)
return [v for k, v in self.items() if p.match(k)] or None
def fetch_one(self, pattern):
p = re.compile(pattern)
for k, v in self.items():
if p.match(k):
return v
在python中,字典是键和值对的映射
您需要迭代字典中的项,并检查您的键是否与给定的模式“key\uxxx\ustring”匹配 您需要re库来检查正则表达式
因此,这里有一个简单的代码片段,您可以在python3.6中使用与给定regex“key\uxxx\ustring”匹配的值打印键
1)这里的第一行,就是导入re库进行正则表达式匹配
2)第二行是迭代字典中的项目
3)第三行将每个键与regex模式“key\u xxx\u string”匹配
4)如果关键字匹配,第四行实际上只是打印字典中的项目
正如其他人所说,dict用于快速哈希查找,这意味着您需要查看每个键以找到所需的值。你知道吗
然而,这也可以通过理解来完成:
您甚至可以创建自己的类来为您执行以下操作:
那么就这么简单了:
使用示例如下:
如果找不到任何内容,则默认为
None
相关问题 更多 >
编程相关推荐