Курс 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. Проектирование Singleton с метаклассом
  2. Форматирование объектов с модулем pprint
  3. Python Ellipsis использование
  4. Функции any() и all() в Python
  5. Перегрузка операторов в Python
  6. Ограничение ресурсов в Python
  7. Функция zip() в Python
  8. Сохранение и загрузка модели в PyTorch
  9. CLI-инструмент howdoi
  10. Создание веб-приложения с Flask
  11. Расчет времени выполнения
  12. Нахождение хеша для бесконечности и NaN в Python
  13. Использование модуля __future__
  14. Бесконечная проверка в Python
  15. Python: Splat-оператор и splatty-splat
  16. Передача словаря через **kwargs
  17. Возврат значений из генератора
  18. Сравнение def и lambda функций в Python
  19. Философия Python
  20. Оператор walrus в Python
  21. Срезы в Python
  22. Установка максимального количества цифр
  23. Роль ключевого слова self
  24. Метод ipow для возведения в степень
  25. Модуль future Python
  26. Функция divmod() в Python
  27. Метод split() для разделения строк
  28. Основы Python за 14 дней
  29. Атрибуты массивов в Numpy
  30. Извлечение аудио из видео
  31. Поиск индекса элемента
  32. Переопределение метода divmod
  33. Python: цикл for и оператор присваивания
  34. Метод append() для списка
  35. Комментарии в Python.
  36. Оценка выражений генератора в Python
  37. Работа с исключениями в Python
  38. Создание словарей с defaultdict()
  39. Python Calendar Usage
  40. Bootle — простой веб-фреймворк
  41. Блок try…finally в Python
  42. Обработка аргументов Python
  43. Подсчет частоты элементов с Counter
  44. Метод classmethod
  45. Изменение регистра данных
  46. Удаление дубликатов из списка

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