у тебя внешняя i есть какая-то из-за которой ошибка неочевидна запусти в чистом контексте и получишь NameError
I левая какая-то, да
ну и почитай про list comprehensions, в каком порядке выполняются элементы выражения
А как тогда в 1 строчку распаковать все списки в один [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
в частности про вложенность циклов
list(itertools.chain.from_iterable(a))
from itertools import chain chain.from_iterable(x)
Ничего не пон, но работает
Порядок циклов в listcomps вообще контринтуитивен, мозг плавится
попробуй переписать list comprehension в виде обычного заполнения списка внутри фора
возможны два порядка и оба довольно интуитивны
Поэтому никто не любит listcomps с более чем одним списком
Хз. Почему левый цикл внешний, а правый внутренний. Это неудобно читать
result = [] for j in a: # outer for i in j: # inner result.append(i)
в листкомпе они идут в таком же порядке как и тут
контринтуитивно я скозал
контринтуитивно это факт существования питона
факт существования питониста
Обсуждают сегодня