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

При работе с Python важно понимать, как происходит работа с переменными и объектами. Различия в выходных данных g1 и g2 в данном случае объясняются тем, как происходит присваивание значений переменным array_1 и array_2. В первом случае array_1 привязан к новому объекту [1,2,3,4,5], но так как оператор in вычисляется во время объявления, он все еще ссылается на старый объект [1,2,3,4], который не уничтожается.

Во втором случае, присваивание значений для array_2 обновляет тот же самый старый объект [1,2,3,4] до [1,2,3,4,5]. Следовательно, g2 и array_2 все еще имеют ссылку на один и тот же объект, который теперь был обновлен до [1,2,3,4,5]. Это объясняет различия в поведении переменных и результате их использования.

array_1 = [1, 2, 3, 4]
array_2 = array_1
g1 = [x for x in array_1]
array_1.append(5)
g2 = [x for x in array_2]

Пример кода выше демонстрирует ситуацию, описанную в инструкции. При выполнении данного кода переменные g1 и g2 будут иметь различные значения из-за разницы в присваивании новых значений переменным array_1 и array_2. Понимание таких тонкостей работы с переменными в Python поможет избежать ошибок и неожиданных результатов при программировании.

Твои коллеги будут рады, поделись в

Автор урока

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

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

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

  1. Оператор объединения словарей
  2. Получение списка кортежей из словаря
  3. Модуль inspect
  4. Конвертация изображений в PDF
  5. Поиск анаграмм с Counter
  6. Отделение звука от видео
  7. Работа с контекстными переменными
  8. Срез списка в Python
  9. Переменная Шредингера
  10. Комментарии в Python
  11. Python 3.12: Псевдонимы типов
  12. Генерация QR-кодов с библиотекой qrcode
  13. Руководство по использованию Colorama
  14. Синхронизация потоков с time.sleep()
  15. Отправка поздравлений по дню рождения
  16. Поиск наиболее частого элемента в списке
  17. Получение значений из словарей
  18. Переворот последовательности
  19. Удаление элементов из списка в Python
  20. Тест скорости набора текста на Python
  21. Логический оператор «and» в Python
  22. Кортеж в Python: создание, доступ, изменение
  23. Работа со строками в Python
  24. Поиск частых элементов в списке
  25. Простой калькулятор Python
  26. Парсинг статей с Newspaper3k
  27. Раздувающийся словарь в Python
  28. Библиотека funcy: удобные утилиты
  29. Генерация фальшивых данных с Faker
  30. Python Метод sleep() времени
  31. Быстрый поиск кода
  32. Разрешение имен в Python
  33. Объединение строк с помощью метода join
  34. Множественное наследование в Python
  35. Получение списка файлов в директории с использованием os
  36. Работа с getopt
  37. Тип CodeType в Python.
  38. Фильтрация списков с itertools
  39. Создание словаря через dict comprehension
  40. Обработка ошибок ввода данных
  41. Генерация случайных данных в NumPy
  42. Работа со случайными элементами
  43. Конкатенация строк с помощью join()
  44. Работа с кортежами

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