写一个名为Account的类模拟账户。该类的属性和方法如下图所示。该类包括的属性:账号id,余额balance,年利率annualInterestRate;包含的方法:访问器方法(getter和setter方法),返回月利率的方法getMonthlyIntere
时间: 2024-11-29 07:16:23 浏览: 10
Java设计一个银行帐户类(继承与多态)
5星 · 资源好评率100%
在Python中,我们可以创建一个名为`Account`的类来模拟银行账户,按照您提供的描述,它将有以下属性和方法:
```python
class Account:
def __init__(self, account_id, balance=0, annual_interest_rate=0):
"""
初始化账户类,设置初始值
:param account_id: 账户ID
:param balance: 初始余额,默认为0
:param annual_interest_rate: 年利率,默认为0
"""
self.account_id = account_id
self.balance = balance
self.annual_interest_rate = annual_interest_rate
# 访问器方法(getter)
@property
def balance(self):
return self._balance
@balance.setter
def balance(self, new_balance):
if new_balance < 0:
raise ValueError("余额不能为负数")
self._balance = new_balance
# 计算并返回月利率的方法
def get_monthly_interest_rate(self):
return self.annual_interest_rate / 12
# 示例方法:计算并更新一个月后的利息
def apply_interest(self):
interest = self.balance * self.get_monthly_interest_rate()
self.balance += interest
return interest
# 使用示例
account = Account(1)
print(account.balance) # 获取当前余额
account.balance = 1000 # 设置新余额
monthly_interest = account.get_monthly_interest_rate() # 计算月利率
account.apply_interest() # 应用利息并返回本月利息
```
阅读全文