Курс 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
  2. Проверка файла .py на синтаксис.
  3. Работа с эмодзи в Python
  4. Конкатенация строк с методом join()
  5. Взаимодействие с внешними процессами в Python
  6. Установка и использование Virtualenv
  7. Создание веб-приложения с Flask
  8. Перевод двоичного кода в целое число
  9. Измерение времени выполнения кода
  10. Модуль itertools: эффективная работа с итераторами
  11. Работа со строками в Python
  12. Обход дочерних элементов BeautifulSoup
  13. Метод join() для объединения элементов
  14. Тестирование с responses
  15. Преобразование чисел в Python
  16. Округление чисел с помощью round
  17. Работа с контекстными переменными
  18. Переопределение метода __rshift__
  19. Метод setdefault() в Python
  20. Работа с функцией next() в Python
  21. Расчет времени выполнения
  22. Сортировка данных в Python
  23. Сумма элементов списка
  24. Удаление файлов и папок в Python
  25. Обмен значений переменных в Python
  26. Измерение времени выполнения с помощью time
  27. Объединение множеств в Python
  28. Работа с collections.Counter
  29. Область видимости переменных
  30. Разделение строки на пары ключ-значение.
  31. Автоматизация действий с Pyautogui
  32. Обучение модели с указанием эпох
  33. Строки в Python: апострофы и кавычки
  34. Dict Comprehension в Python
  35. Работа со строками
  36. Работа с CSV файлами
  37. Работа с URL-адресами в Python
  38. Присоединение элементов коллекции
  39. Подсчет частоты элементов с Counter
  40. Проверка типа данных
  41. Реализация метода __abs__ в Python
  42. Метод getitem для доступа к элементам последовательности
  43. Сравнение def и lambda-функций
  44. Работа с набором данных CIFAR10 в PyTorch
  45. Создание треугольника Паскаля
  46. Принципы Zen Python
  47. Работа с YAML в Python
  48. Добавление Progressbar в Python
  49. Работа со словарями с defaultdict из collections

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