面向对象设计还得学习 1.设计一个简单的购房商贷月供计算器类,按照以下公式计算总利息和每月还款金额: 总利息=贷款金额*利率 每月还款金额 = (贷款金额+总利息)/贷款年限 贷款年限不同利率也不同,这里规定只有如下表所示的3种年限、利率。 年限:3年,5年,20年 利率:6.03%,6.12%,6.39% class Calculator(): def __init__(self,money,time): self.money = money if time == '1': self.time = 3 elif 【Python面向对象编程实践】 在Python编程中,面向对象编程是一种重要的编程范式,它允许我们通过类(class)和对象(instance)来组织代码,提高可读性和可重用性。在这个实验中,我们将通过三个不同的任务来深入理解面向对象编程的概念。 1. **购房商贷月供计算器类**: - 类`Calculator`被设计用来计算购房商贷的月供。类中有三个关键属性:`money`(贷款金额)、`time`(贷款年限)和`loan_rate`(贷款年利率)。`__init__`方法初始化这些属性,根据用户输入的年限将时间转换为相应的数值(3年、5年或20年)。 - `loan_total_money`方法根据贷款金额和年利率计算总利息。 - `loan_rate_money`方法根据贷款年限返回对应的年利率。 - `every_repayment_money`方法计算每月还款金额,它是贷款金额加上总利息除以贷款年限乘以12(一年12个月)。 2. **动物类与子类的设计**: - 类`Animal`是基类,包含一个属性`age`和方法`print_info`,用于打印动物的年龄。 - 类`Bird`和`Fish`继承自`Animal`,它们都有自己的`__init__`方法,用于设置初始年龄,并且覆盖了父类的`print_info`方法,以添加各自的特点。`Bird`类增加了颜色属性,`Fish`类增加了重量属性。它们都调用`super().print_info()`来调用父类的方法。 3. **游戏场景模拟**: - 类`Player`代表游戏中的玩家,包含属性`name`(名字)、`blood`(血量)和`weapon`(武器)。`seted`方法用于装备武器,`attack`方法用于攻击目标。玩家对象需要先装备武器,然后才能进行攻击。 - 类`Weapon`表示武器,包含属性`weapon_type`(武器类型)和`lethal`(杀伤力)。 - 在游戏场景中,可以创建多个玩家和武器对象,然后通过玩家对象的`seted`方法装备武器,接着调用`attack`方法进行攻击操作。 通过这个实验,我们可以看到面向对象编程在实际问题解决中的应用,包括类的定义、属性和方法的使用,以及继承和多态的概念。这有助于我们理解和掌握面向对象编程的核心思想,并能将其运用到更复杂的项目中。






















- 粉丝: 4
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 基于规则算法的功率跟随控制:燃料电池汽车能量管理策略及其MATLAB数据分析
- (源码)基于C++的贪吃蛇游戏.zip
- 基于模态计算与声振耦合仿真的玻璃隔声量研究及其工程应用
- (源码)基于Python和Arduino的复古LED条形音频可视化器.zip
- 基于Matlab的ESMD信号分解算法:极值点驱动的数据处理与分析 · 时频分析
- 基于MATLAB的特征子集选择(FSS)与前后搜索法实现及应用
- (源码)基于Arduino的JoystickBuzzer音乐控制器项目.zip
- 模块化多电平换流器MMC的载波移相调制及PLECS仿真研究:工况参数为AC3.3kvDC6kv,采用N=6配置,优化双闭环控制与均压策略
- 基于UDP千兆以太网协议栈的纯FPGA Verilog OV5640图像采集系统实现
- (源码)基于Android的学习应用.zip
- CNG加气站设计:从背景到工艺流程的全面解析与实施方案
- (源码)基于C++的面试算法学习项目.zip
- 基于MATLAB的石川公式法齿轮时变啮合刚度计算及应用 宝典
- 基于MATLAB的EKF-GMPHD与UKF-GMPHD多目标跟踪算法研究及仿真 v4.0
- (源码)基于C++语言的RGB到YCbCr颜色空间转换系统.zip
- 永磁同步电机接地故障检测与处理的技术解析及Python代码实现 信号处理 (07月)



评论0