Курс 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. Оптимизация методов в Python 3.7
  2. Метод init в Python
  3. Установка random seed в Python
  4. Математические функции в Python
  5. Ветвление выражения в Python
  6. Именование переменных в Python
  7. Создание Radio кнопок в tkinter
  8. Работа с процессами в Python
  9. Удаление ключей из словаря
  10. Метод __float__ в Python
  11. Проверка подстроки в строке с помощью in
  12. Настройка логгера Logzero
  13. Форматирование строк с помощью f-строк
  14. Рациональные числа в Python
  15. Профилирование кода на Python
  16. Bootle — простой веб-фреймворк
  17. Измерение времени выполнения
  18. Основы слова
  19. Работа с библиотекой requests
  20. Работа с файлами в Python
  21. Вывод букв строки в Python
  22. Форматирование строк в Python
  23. Транспонирование 2D-массива с помощью zip
  24. Python UserString — создание подклассов строк
  25. Функция zip() — объединение последовательностей
  26. Функция findall() для поиска вхождений строки
  27. Работа со словарями Python
  28. Срезы в Python
  29. Python groupby() из itertools: работа с повторяющимися элементами
  30. Реверс строки в Python
  31. Обработка исключений в Python
  32. Декораторы в Python
  33. Создание инструмента обнаружения плагиата
  34. Удаление дубликатов из списка с помощью dict.fromkeys
  35. Установка и использование pyshorteners
  36. Создание пользовательской коллекции в Python
  37. Символ подчеркивания в Python
  38. Работа с путями в Python
  39. Особенности ключей словаря в Python
  40. Применение функции map() в Python
  41. Сериализация объектов в Python
  42. Оптимизация памяти с __slots__
  43. globals и locals
  44. Обновление данных через PUT запрос

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