我有一个字典列表,每个字典包含两个键-值对,如图所示(这只是列表的一小部分)
G=[{j:0,vi:0},{j:1,vi:1},{j:2,vi:2},{j:3,vi:3}]
我正在使用If语句来查找当前vi是否已存在于字典列表中
if any('vi' in d.keys() for d in G]:
然后我要获取包含当前vi的特定词典的j值。 因此,如果vi为1,我想从j:1获得1。 该j值将用作我正在构建的矩阵的列指针。 我不确定该怎么做。任何指针都会有所帮助。
请注意,字典的G列表每次迭代都在不断增长
我在这里尝试了各种键值提取答案,但是它们都是用于提取特定的键或值,而不是同一字典中的另一个键或值。
答案 0 :(得分:1)
您写道:
如果vi在G.viewvalues()中:
您想要:
if any('vi' in d
for d in G):
您将问题标记为python3,但使用了python2语言功能。
可能您想编写一个生成器函数 具有以下行为:
for d in G:
if d.get('vi') == current_vi_value:
yield d['j']