全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 模拟技术 >

详解面向对象(二)

时间:2022-08-18 15:04

人气:

作者:admin

标签: python  解释器  计数器 

导读:注意,__init__,开头和结尾各有 2 个下划线,且中间不能有空格。Python 中很多这种以双下划线开头、双下划线结尾的方法,都具有特殊的意义。...

__init__方法创建对象

__init__()

类构造方法:在创建类时,我们可以手动添加一个

__init__()

方法,该方法是一个特殊的类实例方法,称为构造方法(也叫初始化)。构造方法用于创建对象时使用,每当创建一个类的实例对象时,Python 解释器都会自动调用它。Python 类中,手动添加构造方法的语法格式如下:

poYBAGL94y6APdBKAAARO8RPZso472.png

注意,__init__,开头和结尾各有 2 个下划线,且中间不能有空格。Python 中很多这种以双下划线开头、双下划线结尾的方法,都具有特殊的意义。
如果__init__方法有参数的话:在实例化的时候除了self,其他的需要手动传递参数:

poYBAGL9412ARwhjAADcT2yTXqA265.png

init类构造方法归结起来就是谁调用赋值谁。

我们还可以给上面这段代码加点料,产生计数器的效果:

pYYBAGL9466AB4guAADapc5L070216.png

__dict__查看属性

使用__dict__,可以查看定义的类的属性(不包含公有属性),可以理解为公有属性是本身就具备的,而非后来定义。具体用法为:

print

(对象.__dict__)

poYBAGL94_KAJIlVAAAnGK_qVwY470.png

小实例

模仿英雄联盟(LOL)定义两个英雄类

要求:1、英雄有昵称、生命值、攻击力2、实例化出两个英雄对象3、英雄之间可以互殴,被打的一方掉血,血量小于0判断死亡

poYBAGL95CSAGBEzAAEAt-a-7bg539.pngpoYBAGL95CqAfO1yAAFw-StOBRA277.pngpYYBAGL95DOAbeRwAAAk_iQvuA4193.png

组合

在一个类中以另一个类的对象作为数据属性,称为类的组合。

例如:

有一个士兵类

属性:姓名,武器

枪火类

属性:名称,子弹数量,杀伤力

方法:开火,装弹

pYYBAGL95FuAV__CAAEBco9KKkc600.pngpoYBAGL95GKAc98KAABnZnZtlJM874.png

第40行就是组合。




审核编辑:刘清


温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信