Курс Python → Генераторы в Python
Выражения-генераторы в Python представляют собой удобный способ создания итерируемых объектов без необходимости создавать полный список в памяти. Однако, есть несколько особенностей, которые следует учитывать при работе с ними.
Первое, что следует помнить, это то, что генераторы должны быть заключены в круглые скобки. Написание генератора без скобок приведет к синтаксической ошибке. Например, вместо [x for x in range(5)] нужно использовать (x for x in range(5)).
Вторая важная особенность заключается в том, что при передаче генератора в функцию дополнительные скобки не являются обязательными. То есть, вместо sum((x for x in range(5))) можно написать sum(x for x in range(5)).
Третье важное замечание касается работы с генераторами. Нельзя использовать функцию len() для определения длины генератора, так как она не поддерживается. Вместо этого можно преобразовать генератор в список и затем использовать len() для списка.
Наконец, нельзя напрямую распечатать элементы генератора с помощью функции print(). Для этого необходимо сначала преобразовать генератор в список или использовать цикл для итерации по элементам генератора и их последующего вывода.
Другие уроки курса "Python"
- Методы сравнения множеств
- Сортировка и обратный порядок
- Компиляция регулярных выражений
- Операции с массивами в NumPy
- Конкатенация строк в Python
- Оптимизация памяти с помощью __slots__
- Работа с YAML в Python
- Проверка окончания строки с помощью str.endswith()
- Форматирование строк с f-строками
- Импорт модуля из другого каталога
- Функции map() и reduce() в Python
- Работа с парами ключ-значение
- Запрос DELETE с библиотекой requests
- Измерение времени выполнения кода
- Срезы в Python
- Лямбда-функции для min/max
- Класс UserDict: дополнительная функциональность
- lru_cache оптимизация функций
- Аннотации типов в Python
- Установка и использование pyshorteners
- Метод difference_update() — разность множеств
- Python 3.12: переиспользование кавычек
- Использование type hints
- Однострочники Python
- Запуск внешнего кода в Jupyter
- Создание и инициализация объектов
- Оператор обр. импликации
- Копирование файлов с shutil()
- Синтаксис переменных цикла в Python
- Мониторинг памяти с Pympler
- Присвоение и ссылки
- Изменение переменной в Python: nonlocal
- Извлечение статей с newspaper3k
- Отправка HTTP-запросов в Python
- Протокол управления контекстом
- Удаление дубликатов из списка с помощью dict.fromkeys
- Создание инструмента обнаружения плагиата
- Получение ID текущего процесса
- Применение функций в Python
- Преобразование списка в словарь через генератор
- Вывод переменной и строки в Python
- Автоматизация с Python
- Установка и использование Telegram API в Python
- Распаковка элементов последовательности
- Аннотации типов в Python
- Хранение переменных в Python.
- Сохранение и загрузка модели в PyTorch















