检查列表是否存在于包含列表、元组的子列表中

Check whether a list is present in sublist containing list, tuples

我有一个包含子列表的列表,子列表包含其他列表和元组,类似这样

[[(1.0, 1.5), [2, 2], (1.5, 1.0)], [(1.1428571343421936, 0.28571426868438721), [1, 0], (0.5, 0.0)], [(0.66666668653488159, 0.0), [0, 0], [0, 1], (0.5, 1.25)]]

我想搜索 [2,2] 是否存在于子列表中,并打印包含 [2,2] 的子列表的索引。例如。包含 [2,2] 的子列表是 0.

我尝试使用以下代码,但它以递增的方式提供了所有元素。

for index, value in enumerate(flat_list):
    if value == [xpred,ypred]:
        print(index)

请提出一些替代方案!!

试试这个

l = [[(1.0, 1.5), [2, 2], (1.5, 1.0)], [(1.1428571343421936, 0.28571426868438721), [1, 0], (0.5, 0.0)], [(0.66666668653488159, 0.0), [0, 0], [0, 1], (0.5, 1.25)]] 

is_in_l = [l.index(pos) for pos in l if [2,2] in pos]
if is_in_l:
    print('List Available at {} position'.format(is_in_l[0]))
else:
    print('List not present')

下面是一些可能有用的代码:

x = [[(1.0, 1.5), [2, 2], (1.5, 1.0)],
     [(1.1428571343421936, 0.28571426868438721), [1, 0], (0.5, 0.0)],
     [(0.66666668653488159, 0.0), [0, 0], [0, 1], (0.5, 1.25)]]

looking_for = [2,2]

for i in range(len(x)):
  for j in range(len(x[i])):
    if x[i][j] == looking_for:
        print([i,j])

我做了一个嵌套的for循环。外层循环遍历列表 x 中的所有项目。这些项目本身就是列表。第二个 for 循环在子列表中迭代。最后,检查元组或列表是否符合您要查找的内容,并打印符合的索引。

希望这能回答您的问题,祝您编码顺利!