我有一个python字典,由tuples组成的字典键
像这样:
{
(u'A_String_0', u'A_String_1', u'B_String_3', u'Remove_Me'): 300,
(u'A_String_0', u'B_String_4'): 301,
(u'A_String_0', u'A_String_1', u'B_String_3', u'Remove_Key'): 301,
}
当键中只有tuple的一部分出现时,我想从字典中删除所有键:
例如'Remove_'
在这种情况下,必须弹出两个键:一个包含u'Remove_Me'
,另一个包含u'Remove_Key'
最后,字典将如下所示:
^{pr2}$非常感谢!在
不过,用的是同一个词。还要注意,最初的帖子说“tuple的一部分出现在key中”,所以它不必在开头,即
startswith()
单向:
编辑:如果您想检查
^{pr2}$Remove_
是否是tuple键的任何项的一部分,那么最好使用:因为键总是一个没有任何结构或模式的组合体,所以为了访问字典中的元素,总是需要有完整的键。特别是这意味着您无法使用某些部分键找到元素。因此,要做到这一点,除了查看所有关键点外,别无选择:
这将从源字典创建一个新字典,获取开头的元素,
k
中any(x.startswith('Remove_') for x in k)
不为真的每个键k
。如果any()
中有一个以^{any()
表达式将为真。在相关问题 更多 >
编程相关推荐