学习Python的第四天

与Python相处的第四天
前言:今天天气死热 万里有几多云 在某站看到几段话在这里先说一下吧
光啊 飘洒吧! -by光之偶像·荷鲁斯
以我之正义歼灭所有 -by光之偶像·荷鲁斯
我怎能 在这里倒下 呃啊~~~ -by全能之玛特咖
语言 最终 无法改变吗! -by制造者卢克
好了好了 中二到此结束 进入正题
对象
前言:没有对象怎么办?NEW个新对象啊!
类和对象:简单的说,类是对象的蓝图和模板,而对象是类的实例。最后一句话画重点。
类的定义:
格式:class 类名(object):(object可写可不写)
def __init(self):
pass
def 函数名():
pass
if name ==‘main’:
函数名()
self:self是个标记 就像国家有国徽一样能一眼看出是哪个对象里面的。
在这里插入图片描述
if:下面的if中的()相当于初始化
类的调用:类名.方法名()在这里插入图片描述
私有变量
私有变量一般用两个下划线+名字来定义
私有变量定义之后不可以在外部调用在这里插入图片描述
调用私有变量:如果硬是要调用私有变量可以查看私有变量的 名字到底定义为什么之后才可以调用或者用下面的另一种方法。
装饰器
访问器:访问器 顾名思义就是访问私有变量的一个东西 @property 然后下面加访问器的函数名字 这样就可以在外部调用私有变量了在这里插入图片描述
经过访问器调用过的私有变狼就会变成一种属性。
_slots_魔法

python是一种动态语言郧西在程运行时给对象绑定新的方法或是属性,也可以对已经绑定的进行解绑或者是修改。
继承
就像 爹有的东西儿子一定有 儿子有的东西爹不一定有一样,子类可以调用父类中的方法,这就是继承
注意:在继承中 子类一定要注意是否初始化了父类中的元素 必须要初始化 必须要初始化 必须要初始化 重要的事情说三遍。
在这里插入图片描述
当然在继承中上面的私有变量对于继承也同样适用。但是要记住 尽量不要去用私有变量 将不准在外面想用这个私有变量了呢 可以用一个约定俗成的格式 (_元素 )这样就可以告诉其他人这个很重要 可以调用 可以修改 但是最好不要碰 好奇心会害死猫。
案例1:奥特曼打小怪兽

from abc import ABCMeta, abstractmethod
from random import randint, randrange


class Fighter(object, metaclass=ABCMeta):
    """战斗者"""

    # 通过__slots__魔法限定对象可以绑定的成员变量
    __slots__ = ('_name', '_hp')

    def __init__(self, name, hp):
        """初始化方法

        :param name: 名字
        :param hp: 生命值
        """
        self._name = name
        self._hp = hp

    @property
    def name(self):
        return self._name

    @property
    def hp(self):
        return self._hp

    @hp.setter
    def hp(self, hp):
        self._hp = hp if hp >= 0 else 0

    @property
    def alive(self)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值