@Nikitos2002

Генератор списка и включение списка — одно и то же?

Начал изучать python, дошёл до включения списков. В конце каждой главы задания, которые вызвали у меня затруднения. Пришлось зайти в ютюб, начал смотреть видеоуроки и наткнулся на генератор списка, посмотрев урок показалось, что генератор списка и включение одно и то же. Так ли это ?
  • Вопрос задан
  • 351 просмотр
Решения вопроса 1
@savao
Python-программист
Тут проблема с рускоязычной терминологией.
Конструкцию вида:
a = [x+1 for x in range(10)]
Называют генератором списков. Суть в том что эта конструкция генерирует список. Т.е. её результат список. Но с точки зрения терминологии програмирования это списковое включение.
А вот генераторо списка будет иметь вид:
a = (x+1 for x in range(10))
Соответственно, он будет иметь свойства генератора, а не списка. Т.е. меньше занимает места при большом количестве элементов (хотя тут это не совсем приемлемое понятие, скорее потенциально генерируемых значений, как-то так), но элементы можно будет получать только последовательно. Нельзя будет обратиться сразу к 100 элементу.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Не так. Списковое включение порождает список, а генераторное выражение генератор.
Ответ написан
Комментировать
@deliro
Да, одно и тоже. Причём, первое название неверное. Есть списковые включения, множественные, словарные и генераторные.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы