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

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

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


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

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

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

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

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

Автор урока

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

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

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

  1. Автоматизация действий с Pyautogui
  2. Создание уникального проекта
  3. Создание словарей с defaultdict()
  4. Конструктор в Python
  5. Метод clear для коллекций
  6. Работа с кортежами в Python
  7. Многострочные строки в Python
  8. Именованные кортежи в Python
  9. Вакансии в Nebius
  10. Итераторы с потерямиZIP
  11. Перемешивание списка с shuffle()
  12. Оператор break в Python
  13. Работа с библиотекой requests
  14. Игра «Виселица» на Python
  15. Работа с defaultdictами в Python
  16. Оценка выражений генератора в Python
  17. Проверка индексов коллекции
  18. Синхронизация доступа к ресурсам
  19. split() без разделителя
  20. Обмен значений переменных в Python
  21. Python: динамическая типизация и проверка типов
  22. Декораторы с @wraps
  23. *args и **kwargs в Python
  24. Асинхронное выполнение задач в процессах
  25. Обработка исключений в Python
  26. Метод rmatmul для пользовательских матриц
  27. Лямбда-функции в цикле
  28. Руководство по библиотеке pydantic
  29. Python reversed() функция
  30. Метод enumerate() в Python
  31. Docstring в Python
  32. Объединение словарей в Python
  33. Вычисление фазы комплексного числа
  34. Проверка существования переменной с оператором :=
  35. Установка и использование TensorFlow
  36. Функции в одну строку
  37. Оператор in в Python
  38. Сортировка слиянием
  39. Пустой оператор pass в Python
  40. Функции min(), max(), sum()
  41. Роль ключевого слова self
  42. Python enumerate() использование
  43. Логические операторы в Python
  44. Встраивание HTML в Jupyter Notebook
  45. Вложенные генераторы в Python
  46. Разделение строки с помощью re.split()
  47. discard() — удаление элемента из множества

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