• python面向对象


    类是具有一系列相同特征和行为的事物的统称,抽象的,不能直接使用的

    属性是特征,方法是行为

    类的三要素:类名,属性,方法

    类相当于图纸(模板),负责创建具体事物

    类只有一个,对象可以有多个

    对象是由类创建出来的一个具体存在,可以直接使用

    类中定义了哪些属性和方法,由该类创建出来的对象中就有哪些属性和方法

    在开发中,先有类,才有对象

    def demo():
        """这是一个试运行函数"""
        print("hello python")
    
    print(dir(demo))
    print(demo.__doc__)

    class Cat:
        def eat(self):
            print("小猫爱吃鱼")
    
        def drink(self):
            print("小猫爱喝水")
    
    # 创建猫对象
    tom=Cat()
    
    # 对象来调用方法,在对象后面加点
    tom.drink()
    tom.eat()

     

    class Cat:
        def eat(self):
            print("小猫爱吃鱼")
    
        def drink(self):
            print("小猫爱喝水")
    
    # 创建猫对象
    tom=Cat()
    #可以使用 .属性名  利用赋值来增加属性
    tom.name="Tom"

    class Cat:
        def eat(self):
            # 哪一个对象调用的方法,self就是该对象的引用
            print("%s爱吃鱼"  %self.name)
    
        def drink(self):
            print("小猫爱喝水")
    
    # 创建猫对象
    tom=Cat()
    #可以使用 .属性名  利用赋值来增加属性
    tom.name="Tom"
    
    # 对象来调用方法,在对象后面加点
    tom.drink()
    tom.eat()
    
    # 再创建一个猫对象
    lazy_cat=Cat()
    
    lazy_cat.name="大懒猫"
    lazy_cat.eat()
    lazy_cat.drink()

    class Cat:
        def __init__(self):
            print("这是一个初始化方法")
    
    # 使用类名创建对象时,会自动调用初始化方法  __init__
    tom=Cat()

     

    class Cat:
        def __init__(self,new_name):
            print("这是一个初始化方法")
            self.name=new_name
            # self.属性名=属性初始值
            # self.name="Tom"
    
        def __del__(self):
            print("%s我去了" %self.name)
    
        # str方法必须返回一个字符串
        def  __str__(self):
            return "我是小猫【%s】"  %self.name
    
    # 使用类名创建对象时,会自动调用初始化方法  __init__
    tom=Cat("Tom")
    print(tom)
  • 相关阅读:
    matlab中怎样计算某元素是否在某个集合中??
    matlab中怎样删除重复元素使得和Python中集合set的功能一样
    Matlab中怎样计算两个向量或矩阵的共同元素或交集
    matlab中怎样由上已知的三角矩阵或下三角矩阵构建对称矩阵??
    Matlab中怎样将.dat格式的文件进行加载转化为一个矩阵??
    matlab中排序(矩阵的行排序及列排序)
    Python中字典嵌套??
    6.面向对象 -类.md
    1.Java基础概念.md
    5.Java中的数组.md
  • 原文地址:https://www.cnblogs.com/wang-xun/p/11410821.html
Copyright © 2020-2023  润新知