Дополнительные обобщения распаковки (PEP 448) с переменным количеством элементовPython

Программы на Python
Ответить
Anonymous
 Дополнительные обобщения распаковки (PEP 448) с переменным количеством элементов

Сообщение Anonymous »

Принятие PEP 448 представил Дополнительные обобщения распаковки в Python 3.5.

Например:

>>> l1 = [1, 2, 3]
>>> l2 = [4, 5, 6]

# unpack both iterables in a list literal
>>> joinedList = [*l1, *l2]
>>> print(joinedList)
[1, 2, 3, 4, 5, 6]


ВОПРОС: Есть ли способ сделать то же самое со списком списков?

Этот код не работает:


Синтаксическая ошибка: итеративную распаковку нельзя использовать при понимании


# List of variable size
list_of_lists = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
joined_list = [*l for l in list_of_lists]


Конечно, вы могли бы сделать следующее, но это выглядит менее элегантно и неэффективно:

# List of variable size
list_of_lists = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
joined_list = list()
for l in list_of_lists:
joined_list += l


Подробнее здесь: https://stackoverflow.com/questions/487 ... f-elements
Ответить

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

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

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

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

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