练习题描述:
创建一个名为 BankAccount 的类,用于模拟银行账户的基本操作。具体要求如下:
初始化方法 (**init**):
接受两个参数:account_holder(账户持有者姓名)和 initial_balance(初始余额)。
将 account_holder 和 initial_balance 作为实例属性存储。
initial_balance 应该是一个私有属性,不能直接通过对象访问。
其他方法:
实现一个方法 deposit,用于向账户存款。(存款金额不能小于0)
实现一个方法 withdraw,用于从账户取款(需检查余额是否足够)。
# 创建类
class BankAccount(object):
def __init__(self,account_holder,initial_balance):
self.account_holder = account_holder
self.__balance = initial_balance # 私有属性
def deposit(self,money):
"""存款"""
if money > 0:
self.__balance += money
print(f'成功存入:【{money}】 元!')
else:
print('存款必须大于0!')
def withdraw(self,money):
"""取款"""
if self.__balance >= money:
self.__balance -= money
print(f'取款金额为:【{money}】 元')
else:
print('卡里余额不够啦!!!!')
def __str__(self):
return f'当前账号:{self.account_holder},卡里余额:{self.__balance} 元'
# 实例化对象
zhangsan = BankAccount('张三',1000)
print(zhangsan)
zhangsan.deposit(300) # 存款
zhangsan.withdraw(500) # 取款
print(zhangsan)
print('-'*30)
lisi = BankAccount('李四',500)
print(lisi)
lisi.withdraw(800) # 取款
print(lisi)
运行结果: