Курс Python → Изменение объектов в Python
Пятый фрагмент инструкции по Python касается изменения объектов внутри последовательностей или сопоставлений. Многие методы, такие как list.append, dict.update, list.sort и другие, изменяют объекты на месте и возвращают None. Это сделано для увеличения производительности путем избегания создания копий объектов, если операция может быть выполнена непосредственно внутри оригинального объекта.
Примером такого поведения может быть метод append у списка. Когда мы вызываем list.append(элемент), сам список изменяется, добавляя в конец новый элемент. Это происходит на месте, то есть без создания нового списка с добавленным элементом. После выполнения метода append список изменяется, но сам метод возвращает None.
my_list = [1, 2, 3]
result = my_list.append(4)
print(my_list) # Результат: [1, 2, 3, 4]
print(result) # Результат: None
Такой подход позволяет экономить ресурсы компьютера и ускоряет выполнение программы, особенно при работе с большими объемами данных. Однако, необходимо помнить, что изменение объектов на месте может привести к нежелательным побочным эффектам, если не учитывать это при написании кода.
Использование методов, которые изменяют объекты на месте и возвращают None, требует внимательного подхода и понимания их работы. Важно учитывать, что такие методы не создают копии объектов, а изменяют их напрямую. Поэтому при написании кода необходимо учитывать особенности работы таких методов для избежания ошибок.
Другие уроки курса "Python"
- Метод split() для разделения строк
- Установка и использование TensorFlow
- Атрибуты класса и экземпляра
- Итераторы в Python
- Удаление элемента из списка в Python
- Создание уникального множества
- TypedDict для kwargs в Python 3.12
- Запуск внешнего кода в Jupyter
- Вычисление разности множеств в Python
- Аннотации типов в Python
- Переменные класса и экземпляра
- Функция map() и ленивая оценка
- Форматирование заголовков в Python
- Генераторные функции в Python
- Транспонирование 2D-массива с помощью zip
- Ускорение кода с помощью векторизации
- Операторы Splat и splatty-splat
- Работа с каталогами в Python
- Создание новых списков
- Создание вкладок с TKinter
- Просмотр атрибутов и методов класса
- kwargs в Python
- Определение объема памяти объекта
- Оператор «and» в Python
- Оператор «not» в Python
- Сортировка в Python
- Удаление знаков препинания в Python
- Numpy: использование Ellipsis
- Генератор чисел Фибоначчи
- Тестирование модели в PyTorch
- Метод enumerate() в Python
- Мощь вложенных функций в Python
- Генераторы в Python
- Разделение списка на гнппы
- Декоратор @override
- Разделение строки на подстроки в Python
- Передача словаря через **kwargs
- Установка виртуального окружения Python
- Профилирование данных с Pandas
- Просмотр внешнего файла в Python
- Python 3.12: переиспользование кавычек
- Удаление элемента по индексу
- Преобразование Excel в PDF с Spire.XLS
- Названия переменных
- Перегрузка операторов в Python
- Работа с срезами в Numpy















