python之如何从python中的键值对中搜索键
无情
阅读:32
2024-09-07 23:24:14
评论:0
我编写了从我的计算机创建文件的键值对并将它们存储在列表 a
中的代码。这是代码:
groups = defaultdict(list)
with open(r'/home/path....file.txt') as f:
lines=f.readlines()
lines=''.join(lines)
lines=lines.split()
a=[]
for i in lines:
match=re.match(r"([a,b,g,f,m,n,s,x,y,z]+)([-+]?[0-9]*\.?[0-9]+)",i,re.I)
if match:
a.append(match.groups())
print a
现在我想查找某个特定键是否在该列表中。例如,我的代码生成此输出:
[('X', '-6.511'),('Y', '-40.862'),
('X', '-89.926'),('N', '7304'),
('X', '-6.272'), ('Y', '-40.868'),
('X', '-89.979'),('N', '7305'),
('Y', '-42.101'),('Z', '238.517'),
('N', '7306'), ('Y','-43.334'),
('Z', '243.363'),('N', '7307')]
现在,输出中的键是 'X'
、'Y'
、'Z'
、'N'
但我要查找的键是 A
、B
、G
、F
、M
, N
, S
, X
, Y
, Z
>。因此对于那些不在输出中的键,输出应该显示类似“A not in list”
、“B not in list”
。
请您参考如下方法:
for node in ['A', 'B', 'G', 'F', 'M', 'N', 'S', 'X', 'Y', 'Z']:
if node not in groups.keys():
print "%s not in list"%(node)
在遍历列表时使用变量和打印函数
我想这就是你想要的。
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。