Курс 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. Работа с CSV в Python
  2. Defaultdict в Python
  3. Перемещение и удаление файлов в Python
  4. Запрос DELETE с библиотекой requests
  5. Счетчик в Python: most_common()
  6. Изменение элемента списка
  7. Проверка существования переменной с оператором :=
  8. Создание списков в Python
  9. Counter() — подсчет элементов
  10. Выражения-генераторы в Python
  11. Проверка файла .py на синтаксис.
  12. Оператор «or» в Python
  13. Списковые включения в Python
  14. Кортежи в Python: особенности и преимущества
  15. Изменение списка срезом
  16. Принципы программирования
  17. Удаление эмодзи с помощью pandas
  18. Работа со строками в Python
  19. Метод __irshift__ для Python
  20. Подсказки типов в Python
  21. Модуль itertools: комбинации и перестановки
  22. Создание пользовательской коллекции в Python
  23. Разработка Telegram-ботов
  24. Извлечение данных из JSON
  25. Big O оптимизация
  26. Ввод нескольких значений
  27. Создание обратного итератора
  28. Перемешивание списка с shuffle()
  29. Асинхронное выполнение задач в Python
  30. Регистрация на хакатоне
  31. Генераторы списков
  32. Нахождение пересечения множеств
  33. Векторизация в Python с NumPy.
  34. Метод matmul для умножения матриц
  35. Поиск наиболее частого элемента в списке
  36. Логирование с Logzero
  37. Инверсия списка и строки в Python
  38. Декораторы в Python
  39. Переопределение унарных операторов
  40. Метод __irshift__ для побитового сдвига вправо
  41. Обработка ошибок в Python
  42. Сортировка и разворот списка
  43. Перевод текста с Python Translator
  44. Курс Data Scientist в медицине
  45. Работа с JSON в Python
  46. Библиотека Emoji: использование смайлов в Python
  47. Генераторы данных
  48. Retrying в Python: повторные вызовы

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