如何销毁python中属性中的对象?

2024-04-26 04:50:34 发布

您现在位置:Python中文网/ 问答频道 /正文

如果满足某个条件,我想销毁代码中的对象,但无法销毁。谁能帮帮我吗? 代码如下:

class bank:
    name="State bank"
    no_of_user=0
    def __init__(self,name,amount):
        self.ac_name=name
        self.ac_balance=amount
        bank.no_of_user+=1
        print('Welcome')
        return
    def __del__(self):
        bank.no_of_user-=1

    def withdraw(self,amount):
        if self.ac_balance>amount>0:
            self.ac_balance-=amount
            print('An amount of %d is debited from your account and current balance is %d' %(amount,self.ac_balance))
        elif self.ac_balance==amount:
            ask=input('Do you want to close your account(y/n): ')
            if ask=='y'or'Y':
                del(self)
            else:
                self.ac_balance-=amount
                print('An amount of %d is debited from your account and current balance is %d' %(amount,self.ac_balance))
        else:
            if amount==0:
                print('Enter a valid amount ')
            else:
                print('insufficient funds ')

以下是我得到的输出:

IN:a=银行('Asish',35000)

入:a.取款(35000)

你想关闭你的帐户吗

现在我希望代码删除对象“a”并减少“no_of_user”。但是,这两种情况都没有发生。而且,即使我把'ask'的值设为'n'

入:a.取款(35000)

你想关闭你的帐户吗(是/否):n

代码没有减少帐户余额。有人能帮我解决这个问题吗?在


Tags: ofno代码nameselfyourifis