Понимание списка, вызывающее себя [дубликат]Python

Программы на Python
Ответить
Anonymous
 Понимание списка, вызывающее себя [дубликат]

Сообщение Anonymous »


Проблема: попытка улучшить решение и исключить перечисление

#Пример 1 Ожидаемый результат: в подсписке нет дубликатов[1] Пройдено а = [[131,1],[14,7],[25,2],[333,7],[38,8],[57,2]] b = [j для i,j в enumerate(a) если j[1] не в [c[1] для c в a[:i]]] распечатать(б) #>>>[[131, 1], [14, 7], [25, 2], [38, 8]] К счастью, результатом является список списков без повторения второго элемента

Попытка исключить перечисление и получить доступ к списку (b) по мере его создания в рамках понимания списка:

#Пример 2 Ожидаемый результат: в подсписке нет дубликатов[1] Ошибка а = [[131,1],[14,7],[25,2],[333,7],[38,8],[57,2]] б=[] b = [i для i в a, если i[1] не в [c[1] для c в b]] распечатать(б) #>>> [[131, 1], [14, 7], [25, 2], [333, 7], [38, 8], [57, 2]] Меня меньше беспокоит устранение перечисления как такового, я скорее пытаюсь понять, как получить самостоятельный доступ к пониманию списка во время его генерации, если это вообще возможно. Различные попытки использовать функцию назначения 3.8 оказались безуспешными.

Заранее благодарим за любую информацию!
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»