Вложенная функция в классе, Python - PullRequest
0 голосов
/ 19 сентября 2018

Я пытаюсь использовать вложенную функцию внутри класса.Вот мой код

class big():
        def __init__(self):
        self.mas = "hello"

    def update(self):

        def output(self):
            print(self.mas)

        self.output()

thing = big()

thing.update()

Однако, когда он работает, я получаю сообщение об ошибке, что вывод не определен.Как я могу запустить функцию вывода внутри функции обновления?

1 Ответ

0 голосов
/ 19 сентября 2018

Просто назовите его как output(), без self.То, как вы это определили, это в основном локальная переменная внутри вашего update метода, а не атрибут класса.

class big():
    def __init__(self):
        self.mas = "hello"

    def update(self):
        def output():
            print(self.mas)

        output()

thing = big()

thing.update()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...