Курс Python → Область видимости переменных

Разработчики Python должны помнить, что выражение генератора имеет свою собственную область видимости, что означает, что переменные, объявленные внутри него, не будут доступны за его пределами. Это позволяет избежать конфликтов имен переменных и упрощает отладку кода. Например, если у вас есть выражение генератора внутри функции, то переменные, объявленные в нем, не будут пересекаться с переменными функции.

В Python 3.X также введено понимание списков собственной области видимости. Это означает, что переменные, объявленные внутри списка (например, при использовании list comprehension), будут видны только внутри этого списка и не будут конфликтовать с переменными во внешней области видимости. Это упрощает написание чистого и понятного кода.

Пример кода выражения генератора:


numbers = [1, 2, 3, 4, 5]
squared_numbers = (num ** 2 for num in numbers)
for square in squared_numbers:
    print(square)

Пример кода списка собственной области видимости:


numbers = [1, 2, 3, 4, 5]
squared_numbers = [num ** 2 for num in numbers]
print(squared_numbers)

Использование собственной области видимости переменных в выражениях генераторов и списках позволяет писать более чистый и понятный код, избегая конфликтов имен переменных и улучшая структуру программы.

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

Автор урока

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

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

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

  1. Каналы Senior: Python, Java, Frontend, SQL, C++
  2. Создание вкладок с TKinter
  3. Парсинг веб-страниц с Beautiful Soup
  4. Проверка типов с использованием isinstance
  5. Удаление элементов из списка в Python.
  6. Работа с URL-адресами в Python
  7. Работа с процессами в Python
  8. Расширение информации об ошибке в Python
  9. Работа с изображениями Pillow
  10. Метод join() для объединения элементов
  11. Поиск самого длинного слова в списке с использованием max()
  12. Цикл for в Python
  13. Инверсия списка и строки
  14. ChainMap.new_child() — добавление нового словаря
  15. Циклы for в Python
  16. Операции с датами в Python
  17. Проверка вхождения подстроки
  18. Объединение кортежей в Python
  19. Поиск наиболее частого элемента в списке
  20. Оператор space-invader
  21. Проверка типа объекта в Python
  22. Кортеж в Python: создание и использование
  23. Поиск HTML-элементов с BeautifulSoup
  24. Логирование с Loguru
  25. Создание новых списков через list comprehensions
  26. Python: Фильтрация списков с помощью filter()
  27. Отправка поздравлений по дню рождения
  28. Разрешение имен в Python
  29. Оператор is в Python
  30. Работа с модулем random
  31. Хеширование паролей с солью
  32. Обработка исключений с блоком else
  33. Преобразование PowerPoint в PDF.
  34. Сортировка и разворот списка
  35. Вызов функций по строке в Python.
  36. Работа с collections в Python.
  37. Оператор Walrus в Python
  38. Модуль xkcd: загрузка комиксов
  39. Создание namedtuple списком полей
  40. Добавление вложенных списков
  41. Пустой оператор pass в Python
  42. Создание пустых функций и классов в Python
  43. Списковое включение в Python
  44. Отображение графиков в Jupyter с Matplotlib
  45. Оператор continue в Python
  46. Открытие, чтение и закрытие файла
  47. Структуры данных в Python
  48. Использование эмодзи в Python
  49. Решатель судоку на Python с pygame

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