【问题标题】:Search for combinations in tuples在元组中搜索组合
【发布时间】:2020-06-05 01:39:15
【问题描述】:
a = [[3, (1, 2, 3, 4, 5)], [3, (5, 4, 3, 2, 1)]]

b = [[3, (18, 24, 21, 2, 3)], [3, (3, 4, 76, 7, 8)]]

如何访问(1, 2, 3, 4, 5)(5, 4, 3, 2, 1)(18, 24, 21, 2, 3)(3, 4, 76, 7, 8)

我必须在不同的列表中搜索这些元素。

例如:(3, 4, 76, 7, 8) 是否在列表 a 中,如果是,该元素的具体数字是多少?

(在那种情况下 [3, (3, 4, 76, 7, 8)] )。

提前致谢。

【问题讨论】:

  • 您的问题不清楚,您的意思是要问“如何从子列表包含某些特定元素的列表中选择子列表?” - 即[x for x in a if (3, 4, 76, 7, 8) in x]?
  • @Grismar 是的:-)。我在这个编程的事情上并不长。对不起。
  • 这能回答你的问题吗? Python search in lists of lists
  • @Grismar Samwise 的答案是正确的。它对我来说很完美。但也感谢您的帮助。

标签: python list tuples


【解决方案1】:
>>> a = [[3, (1, 2, 3, 4, 5)], [3, (5, 4, 3, 2, 1)]]
>>> b = [[3, (18, 24, 21, 2, 3)], [3, (3, 4, 76, 7, 8)]]
>>> [x for x in a if (3, 4, 76, 7, 8) == x[1]]
[]
>>> [x for x in b if (3, 4, 76, 7, 8) == x[1]]
[[3, (3, 4, 76, 7, 8)]]
>>> [x for x in a + b if (3, 4, 76, 7, 8) == x[1]]
[[3, (3, 4, 76, 7, 8)]]

【讨论】:

    猜你喜欢
    • 2017-12-15
    • 1970-01-01
    • 1970-01-01
    • 2023-02-01
    • 2013-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多