Курс Python → Работа с изменяемыми списками

При работе с изменяемыми и неизменяемыми коллекциями в Python важно понимать разницу в их поведении. Списки являются изменяемыми коллекциями, что означает, что их элементы можно изменять после создания списка. Однако, при работе с изменяемыми объектами нужно быть осторожным, чтобы не изменить список непреднамеренно.

Например, если у нас есть список чисел и мы хотим изменить одно из значений, мы можем обратиться к этому значению по его индексу и присвоить новое значение. Однако, если мы не будем внимательны, мы можем случайно изменить другой список, который ссылается на тот же объект в памяти.


numbers = [1, 2, 3, 4]
new_numbers = numbers
new_numbers[0] = 5
print(numbers)  # Выведет [5, 2, 3, 4]

В приведенном примере мы видим, что изменение значения в новом списке также приводит к изменению значения в исходном списке. Это происходит потому, что оба списка ссылаются на один и тот же изменяемый объект в памяти.

Для избежания подобных ошибок важно использовать методы копирования списков, такие как метод copy() или срезы. Таким образом, мы можем создать копию списка, а не просто ссылку на существующий список, и избежать неожиданных изменений.

Пример создания копии списка:


numbers = [1, 2, 3, 4]
new_numbers = numbers.copy()
new_numbers[0] = 5
print(numbers)  # Выведет [1, 2, 3, 4]
Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Регистрация на курсы SF Education
  2. Асинхронное выполнение задач в Python
  3. Дизассемблирование Python кода
  4. SciPy: широкий функционал для математических операций
  5. Импорт с альтернативным именем
  6. Переопределение метода xor в Python
  7. Декоратор Ajax required
  8. Чтение бинарного файла в Python.
  9. Потоковый ввод в Python
  10. Метод pop() списка
  11. Работа с URL-адресами в Python
  12. Операции с датами в Python
  13. Настройка логгера Logzero
  14. Форматирование чисел в Python
  15. Создание и удаление объектов
  16. Многострочные комментарии в Python
  17. Функция enumerate в Python
  18. Python Менеджер контекста
  19. Декораторы в Python
  20. Метод lt для сортировки объектов
  21. Принцип одной функции
  22. Работа с множествами в Python
  23. Операторы Splat и splatty-splat
  24. Поиск самого частого элемента
  25. Работа с пользовательским вводом
  26. Работа с SQLite в Python
  27. Docstring в Python
  28. Навыки Python: строки, типы данных
  29. Получение пути к текущему скрипту с помощью os
  30. Измерение времени выполнения кода
  31. Разность множеств
  32. Удаление знаков препинания в Python
  33. Печать месячного календаря
  34. Транспонирование 2D-массива с помощью zip
  35. Генераторы в Python
  36. Класс UserDict: дополнительная функциональность
  37. Компиляция регулярных выражений
  38. Визуализация пропусков данных
  39. Инвертирование словаря
  40. Метод classmethod
  41. Нахождение отличий в списках
  42. Функция с *args.
  43. Хранение переменных в словаре.
  44. Удаление ключей из словаря
  45. Добавление элемента в список.
  46. Основы работы с базами данных в Python
  47. Асинхронное выполнение задач в процессах
  48. Преобразование PowerPoint в PDF.
  49. Работа с изображениями Pillow

Marketello читают маркетологи из крутых компаний