【发布时间】:2019-12-28 12:04:50
【问题描述】:
表格中有两个列表:
a = [[x1, 1], [x2, 0], [x3, 4], [x4, 12], [x5, 15]]
b = [[x2, 10], [x3, 41], [x7, 50]]
我想我可以像下面这样来获取 ids x1、x2、x3 等等..
x = [item for item in b if item in a]
print(x)
[[x2, 10], [x3, 41]]
我实际上想打印 b 中 a 中的元素并比较它们的值
[x2, 10] -> [x2, 0]
[x3, 41] -> [x3, 4]
所以在上面的例子中只打印来自 if b[0][1] == 0 & a[1][1] != 0 的元素
任何帮助将不胜感激!
【问题讨论】:
-
这种情况
b[0][1] == 0 & a[1][1] != 0是什么意思? -
两个列表中的
x2,比较与x2关联的值 -
您是否有任何理由尝试使用列表推导来执行此操作?对于复杂的标准,
for循环要容易得多。 -
@MisterMiyagi 你是对的,for 循环更容易解决。我是 Python 新手,所以虽然我可以使用列表推导从 b 中的 a 中查找值!
标签: python python-3.x for-loop list-comprehension