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

Когда вы работаете с переменными в Python, важно понимать, что область видимости переменной определяет доступность этой переменной в различных частях кода. Если переменная не была инициализирована в текущей области видимости, Python будет искать ее во внешних областях.

В случае, когда переменная была присвоена значение внутри функции, она становится локальной для этой функции. Это означает, что переменная будет доступна только внутри этой функции и не будет видна за ее пределами. Если попытаться обратиться к этой переменной вне функции, Python выдаст ошибку о неопределенной переменной.


def another_func():
    a = 10
    print(a)

another_func()
print(a) # Ошибка: имя 'a' не определено

В приведенном выше примере переменная ‘a’ была инициализирована внутри функции ‘another_func’, что делает ее локальной для этой функции. При попытке обратиться к переменной ‘a’ за пределами функции, Python не сможет найти эту переменную в глобальной области видимости и выдаст ошибку.

Чтобы избежать ошибок с переменными вне области видимости, необходимо либо объявить переменную глобальной с помощью ключевого слова ‘global’, либо вернуть значение переменной из функции и присвоить его другой переменной в глобальной области видимости.

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

Автор урока

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

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

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

  1. Работа с deque из collections
  2. Декораторы в Python
  3. Копирование списков в Python
  4. Проверка окончания строки с помощью str.endswith()
  5. Распаковка аргументов в Python
  6. Ускорение обработки данных с %autoawait
  7. Метод get для словарей
  8. Объединение словарей в Python
  9. Аннотации типов в Python
  10. Управление контекстом выполнения кода
  11. Numpy: разбиение массивов
  12. Извлечение новостей с помощью newspaper3k
  13. Структуры данных в Python
  14. Генерация случайных чисел в Python
  15. Множественное присваивание в Python
  16. Лямбда-функции в Python
  17. Аргументы *args и **kwargs
  18. Контекстный менеджер в Python
  19. Декодирование строк в Python
  20. Декораторы в Python
  21. Проверка класса объекта
  22. Генераторы в Python
  23. Модуль subprocess: запуск внешних команд
  24. capitalize() — изменение регистра первого символа строки
  25. Замена текста в Python
  26. Переменные в Python
  27. Работа с дробями в Python
  28. Отладчик pdb: начало работы
  29. Определение объема памяти объекта
  30. Поиск уникальных элементов строкой в Python
  31. Python: библиотеки и функции
  32. Работа с *args и **kwargs в Python
  33. Функция enumerate() в Python
  34. Работа с PosixPath() в Python
  35. Расчет времени выполнения кода
  36. Оператор «or» в Python
  37. Векторизация в Python с NumPy.
  38. Оптимизация гиперпараметров с Scikit Optimize
  39. Удаление файлов и папок в Python
  40. Вложенные генераторы в Python
  41. Очистка входных данных
  42. Перехват исключений в Python
  43. Пропуск начальных строк с помощью dropwhile()

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