1

假设我有一个列表b=['m','NN']和一个字典,如果列表的元素在dict={'b':['NN','m','big']}其中,我想使用该函数检索键 'b' (所以假设使用。现在,如果其中的元素没有排序,我该怎么做作为元素并假设我不能更改 b 列表中的顺序?谢谢!bdict[b][k for k,v in dict.items()]bdict[b]

4

2 回答 2

4

不确定我明白你在问什么,但如果你所追求的是字典中的键列表,d其值是 list 的超集b,你可以使用类似的东西:

b=['m','NN']
d={'b':['NN','m','big'], 'a':['jj','r']}
[k for k,v in d.items() if set(b) <= set(v)]

(我将示例字典的名称更改为dict内置类。)

于 2012-11-14T20:32:59.790 回答
2

你可以做:

 [k for k, v in dict.items() if all((x in v) for x in b)]

例如:

>>> b=['m','NN']
>>> dict={'b':['NN','m','big'], 'a':['NN', 'q']}
>>> [k for k, v in dict.items() if all((x in v) for x in b)]
['b']

(请注意,为您的字典命名是个坏主意dict,因为dict它是数据类型的名称)。

于 2012-11-14T20:30:23.273 回答