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

Область видимости переменной в Python определяет, где переменная может быть доступна в вашем коде. В Python есть три уровня области видимости: глобальная, локальная и нелокальная. Глобальная область видимости означает, что переменная доступна в любом месте вашего кода. Локальная область видимости означает, что переменная доступна только внутри определенной функции или метода. Нелокальная область видимости означает, что переменная доступна внутри вложенной функции, но не является локальной для этой функции.

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


x = 10

def my_function():
    print(x)

my_function()  # Вывод: 10

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


def my_function():
    y = 20
    print(y)

my_function()  # Вывод: 20
print(y)  # Ошибка: NameError: name 'y' is not defined

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


def outer_function():
    z = 30
    def inner_function():
        print(z)
    inner_function()

outer_function()  # Вывод: 30

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

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

Автор урока

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

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

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

  1. Метод ifloordiv для пользовательских классов
  2. Распаковка значений в Python
  3. Создание списка через итерацию
  4. Расчет времени выполнения кода
  5. Отладка кода
  6. Поиск повторов в списке
  7. Удаление дубликатов из списка с помощью dict.fromkeys
  8. Работа с временем в Python
  9. Метод Event.wait() в Python
  10. Генераторы в Python
  11. Использование функции enumerate()
  12. Логирование с Logzero
  13. Сравнение def и lambda функций в Python
  14. Метод сравнения объектов в Python
  15. Оператор обр. импликации
  16. Оформление кода на Python
  17. Логический оператор «and» в Python
  18. Метод join() для объединения строк
  19. Безопасный доступ к значениям словаря
  20. Работа с URL-адресами в Python
  21. Управление User-Agent в Python
  22. Сортировка данных в Python
  23. Операторы объединения в Python 3.9
  24. Работа со строками в Python
  25. Функция map() и ленивая оценка
  26. Сложные типы данных в Python
  27. Подсчет элементов в Python
  28. Удаление ключей из словаря
  29. Оценка точности модели
  30. Оптимизация памяти с slots
  31. Вычисление фазы комплексного числа
  32. Создание словаря через dict comprehension
  33. Методы HTTP запросов в Flask
  34. Команда %dhist — список посещенных каталогов
  35. Функции в Python: создание и вызов
  36. Поиск индекса элемента
  37. Анонимные функции в Python
  38. GitHub в Telegram: подписка на уведомления
  39. Стать Python-разработчиком
  40. Структуры данных в Python
  41. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  42. Сумма элементов списка
  43. Возврат нескольких значений
  44. Строковое представление объектов
  45. Сортировка в Python
  46. Поиск элементов BeautifulSoup
  47. Метод __ixor__ для побитового исключающего ИЛИ

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