在Python3中创建Account类

在Python3中创建Account类,python,class,python-3.x,Python,Class,Python 3.x,我想知道是否有人能帮我解决这个问题?我使用的是Python3,我希望能做到这一点。不过,我完全迷路了。任何帮助都将不胜感激 Account类应包含以下内容 帐户的名为id的私有int数据字段,默认值为0 帐户的名为balance的专用双精度数据字段,默认值为0 名为AnnualInterestate的专用双精度数据字段,用于存储默认值为0的当前利率。假设所有账户的利率相同 名为dateCreated的专用日期数据字段,用于存储创建帐户的日期 创建默认帐户的无参数构造函数 创建具有指定id和初始余

我想知道是否有人能帮我解决这个问题?我使用的是Python3,我希望能做到这一点。不过,我完全迷路了。任何帮助都将不胜感激

Account类应包含以下内容 帐户的名为id的私有int数据字段,默认值为0

帐户的名为balance的专用双精度数据字段,默认值为0

名为AnnualInterestate的专用双精度数据字段,用于存储默认值为0的当前利率。假设所有账户的利率相同

名为dateCreated的专用日期数据字段,用于存储创建帐户的日期

创建默认帐户的无参数构造函数

创建具有指定id和初始余额的帐户的构造函数

id、balance和AnnualInterestate的访问器和变异器方法

dateCreated的访问器方法

一个名为getMonthlyInterestate()的方法,返回月利率

名为draw的方法,用于从帐户中提取指定金额

名为deposit的方法,将指定金额存入帐户

实现这个类。编写一个测试程序,创建帐户ID为1122、余额为20000美元、年利率为4.5%的帐户对象。使用取款方法取款2500美元,使用存款方法存款3000美元,并打印余额、月利息和创建此帐户的日期

我现在的代码是:

class Account:

    def __init__(self):
        self.balance=balance

    def getMonthlyInterestRate(self):
        return (annualInterest/100)

    def getMonthlyInterest(self):
        return blanace * monthlyInterestRate
现在我的另一个代码是:

from Account import Account

def main():

    account = Account()
    account.getMonthlyInterestRate(4.5)

    print("Beginning Balance: ", account.balance)
    print("Monthly Interest Rate: ", account.getMonthlyInterestRate)
    print("Monthly Interest: ", account.getMonthlyInterest)

main()

只需将您的类修改为:

 class Account:

    def __init__(self, balance, annual_interest_rate):
        self.balance=balance
        self.annualInterest = annual_interest_rate

    def getMonthlyInterestRate(self):
        return (self.annualInterest/100)

    def getMonthlyInterest(self):
        return self.balance * self.getMonthlyInterestRate()
请注意,我已将余额和年利率作为构造函数参数传递 因此,要实例化account对象:

account = Account(200, 5)

只需将您的类修改为:

 class Account:

    def __init__(self, balance, annual_interest_rate):
        self.balance=balance
        self.annualInterest = annual_interest_rate

    def getMonthlyInterestRate(self):
        return (self.annualInterest/100)

    def getMonthlyInterest(self):
        return self.balance * self.getMonthlyInterestRate()
请注意,我已将余额和年利率作为构造函数参数传递 因此,要实例化account对象:

account = Account(200, 5)

让我们看看你的代码-

class Account:

    def __init__(self):
        self.balance=balance
这是您的构造函数。它设置类实例的默认状态-当您构建帐户时,此方法将运行。在此方法中,self指的是您正在设置的特定帐户。如果你打电话

myaccount = Account()
myaccount.balance将等于我们设置的值。这里是我们解决第一个问题的地方-您设置self.balance=balance。。。。但平衡并不等于任何东西!不过,你可以这样做

def __init__(self):
    self.balance = 0
    self.id = 0
    self.annualInterestRate = 0
依此类推,以使用默认值设置这些变量

让我们看看你的下一个方法-

def getMonthlyInterestRate(self):
    return (annualInterest/100)
在这里,您设置了一个方法,当调用myaccount.GetMonthlyInterestate()时,该方法应返回速率。但是,您没有指定要从中提取的变量。那应该是 返回self.annualInterestate/100 因为你想从这个账户中获得利息

现在是你的最后一个课堂方法-

def getMonthlyInterest(self):
    return blanace * monthlyInterestRate
这有两个问题。首先,它应该是self.balance-因为它是您想要的该帐户的余额。第二,MonthlyInterestate不是一个变量——它是一个派生值,您有一个函数用于它。不过,您可以调用该函数

return balance * getMonthlyInterestRate()
看看你的主要功能-

account.getMonthlyInterestRate(4.5)
你把利率输入函数。。。但是函数不接受任何参数!如果您想设置您将使用的速率

account.annualInterestRate = 4.5
或者创建一个设置利率函数,该函数接受一个参数,然后将变量设置为适当的值。这将是

def setInterest(self, rate):
    self.annualInterestRate = rate

同样的逻辑也适用于您的其他需求。。。祝Python好运:)

让我们看看您的代码-

class Account:

    def __init__(self):
        self.balance=balance
这是您的构造函数。它设置类实例的默认状态-当您构建帐户时,此方法将运行。在此方法中,self指的是您正在设置的特定帐户。如果你打电话

myaccount = Account()
myaccount.balance将等于我们设置的值。这里是我们解决第一个问题的地方-您设置self.balance=balance。。。。但平衡并不等于任何东西!不过,你可以这样做

def __init__(self):
    self.balance = 0
    self.id = 0
    self.annualInterestRate = 0
依此类推,以使用默认值设置这些变量

让我们看看你的下一个方法-

def getMonthlyInterestRate(self):
    return (annualInterest/100)
在这里,您设置了一个方法,当调用myaccount.GetMonthlyInterestate()时,该方法应返回速率。但是,您没有指定要从中提取的变量。那应该是 返回self.annualInterestate/100 因为你想从这个账户中获得利息

现在是你的最后一个课堂方法-

def getMonthlyInterest(self):
    return blanace * monthlyInterestRate
这有两个问题。首先,它应该是self.balance-因为它是您想要的该帐户的余额。第二,MonthlyInterestate不是一个变量——它是一个派生值,您有一个函数用于它。不过,您可以调用该函数

return balance * getMonthlyInterestRate()
看看你的主要功能-

account.getMonthlyInterestRate(4.5)
你把利率输入函数。。。但是函数不接受任何参数!如果您想设置您将使用的速率

account.annualInterestRate = 4.5
或者创建一个设置利率函数,该函数接受一个参数,然后将变量设置为适当的值。这将是

def setInterest(self, rate):
    self.annualInterestRate = rate

同样的逻辑也适用于您的其他需求。。。祝Python好运:)

问题是什么?如何设置?当我现在运行代码时,我得到一个错误:“全局名称‘balance’未定义。”我对创建帐户ID 1122特别困惑。不,这不是家庭作业。我只是想学python。它来自于一本购买的书。这个任务听起来像是为用Python以外的语言编程的人设计的。提到的一些东西要么在Python中根本不存在(比如私有的、类型化的变量),要么在Python中的工作方式与在其他语言中的工作方式不同(具有不同数量参数的多个构造函数)。如果你正在使用java或C++书籍,学习Python将会非常困难!问题是什么?我该如何设置?当我现在运行代码时,我得到一个错误,说:“全局名称‘balance’未定义。”我对创建帐户ID特别困惑