首页 > 编程语言 > 详细

Python-类的特性

时间:2020-03-24 17:29:52      阅读:63      评论:0      收藏:0      [点我收藏+]

------------恢复内容开始------------

类及类的定义

Cat类

技术分享图片

 

类的特殊方法-构造函数、析构函数

class Cat:
  # 构造函数
  def __init__(self, name, *args, **kwargs):
    self.name = name
  def eat(self):
    pass
  # 析构函数
  def __del__(self):
    pass
  pass

其他类的特殊方法

  __doc__:文档信息

  __module__:模块信息

  tag:自定义的类属性

  catch:自定义的类方法

  __dict__:

类的实现

class Cat(object):
    """
    猫科动物类
    """

    tag = 我是家猫

    def __init__(self, name, age, sex=None):
        self.name = name
        self.__age = age
        self.sex = sex

    def set_age(self, age):
        """
        改变猫的年龄
        :param age: int 年龄
        """
        self.__age = age
        # return self.__age

    def show_info(self):
        """
        显示猫的信息
        :return:
        """
        rest = 我叫:{0}, 今年{1}岁..format(self.name, self.__age)
        print(我的性别:{0}.format(self.sex))
        print(rest)
        return rest

    def eat(self):
        """"""
        print(猫喜欢吃鱼)

    def catch(self):
        """ 猫捉老鼠 """
        print(我能捉老鼠)


class Tiger(object):
    pass


if __name__ == __main__:
    # 实例化你家的小黑
    cat_black = Cat(小黑, 2, 公的)
    cat_black.eat()
    cat_black.show_info()
    print(------------)
    # print(cat_black.name)
    # print(cat_black.age)
    # print(cat_black.__age)  # 无法访问私有变量
    # 更改猫的名称
    cat_black.name = 黑黑   # 可以直接改变
    cat_black.__age = 6       # 无法操作私有变量
    cat_black.show_info()

    print(-------------)
    cat_black.set_age(7)
    cat_black.show_info()

    print(Cat.tag)
    print(cat_black.tag)

    # 实例化我家的小白
    print(xxxxxxxxxxxxxxxxxxx)
    cat_white = Cat(小白, 3, 母的)
    cat_white.show_info()
    print(cat_white.tag)


    # 类的实例判断
    print(isinstance(cat_black, Cat))
    print(isinstance(cat_white, Cat))
    print(isinstance(cat_black, Tiger))
    print(isinstance(cat_white, Tiger))

 

  

 

 

------------恢复内容结束------------

Python-类的特性

原文:https://www.cnblogs.com/ZZBD/p/12559683.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!