Нахождение отличия элемента из одного списка в другой список списка

#python #list

#питон #Список

Вопрос:

У меня есть список со следующими векторными значениями

 list1 = [[-27.1785, -20.7318, -40.724]] list2 = [[-27.1785, -20.7318, -40.724], [-27.1786, -20.7318, -40.724], [27.1786, -20.7318, -40.724]]  

Как вы можете видеть , индексы 0 и 1 list2 находятся внутри list1 , но я не могу понять, как найти векторные значения, которые находятся в списке 1 в списке 2, а затем распечатать векторное значение, которое не совпадает с тем, которое должно быть [27.1786, -20.7318, -40.724] .

Комментарии:

1. Из вашего описания кажется , что вам нужен подсписок, который есть в обоих list1 и list2 , это правильно?

2. В list1 нем всегда будет один элемент подсписка, list2 тот, который вернет много подсписков, я хотел бы использовать результат, полученный в list1 качестве «ключа поиска», чтобы удалить все элементы подсписка list2 , чтобы затем получить новый список с элементами списка, которых нет list1 . Я попытался получить массив numpy, но это может быть неправильный подход.

Ответ №1:

 l1 = [[-27.1785, -20.7318, -40.724]] l2 = [[-27.1785, -20.7318, -40.724], [-27.1786, -20.7318, -40.724], [-27.1786, -20.7318, -40.724]]  z = [x for x in l2 if x not in l1] b_set = set(map(tuple,z)) b = list(map(list,b_set)) print(b)