Есть ли способ получить доступ к атрибуту класса через декоратор? - PullRequest
0 голосов
/ 09 июля 2020

Я практикуюсь с декораторами на простом занятии по банковскому счету. А я пытаюсь через декоратор отобразить "self.balance". Однако из-за объема я получаю NameError. Есть ли способ обойти это?

def statement(f):
    def helper(*args):
        f(*args)
        print(f"{f.__name__} of {args[1]} completed. \nYour new balance is {self.balance}")
    return helper

class Account:
    def __init__(self):
        with open('balance.txt', 'r') as file:
            self.balance = float(file.read())

    @statement
    def deposit(self, amount):
        self.balance += amount

    @statement
    def withdrawal(self, amount):
        self.balance -= amount
...