• 属性查找与绑定


     类中定义的函数属性,在没有经过任何附加处理时,实际上是给对象使用的,绑定给对象使用,谁来调用就实现谁的功能

    #先定义类
    #__init__方法用来为对象定制对象自己独有的特征
    class LuffyStudent:
        school = "Luffycity"  # 数据属性
    
        #            stu1,"王大拿","女",18
        def __init__(self,name,sex,age):
            self.Name = name
            self.Sex = sex
            self.Age = age
    
            #stu1.Name = "王大拿"
            #stu1.Sex = "女"
            #stu.Age = 18
    
        # 类中定义的函数属性,在没有经过任何附加处理时,实际上是给对象使用的,绑定给对象使用,谁来调用就实现谁的功能
        def learn(self):  # 函数属性  # self传的是对象
            print("%s is Learning" % self.Name)
    
        def eat(self):  # 函数属性
            print("%s is eating" % self.Name)
    
        def sleep(self):
            print("%s is sleeping" % self.Name)
    
    #后产生对象
    stu1 = LuffyStudent("王大拿","",18) # LuffStudent.__init__(stu1,"王大拿","女",18)
    stu2 = LuffyStudent("五六七","",26)
    stu3 = LuffyStudent("张全蛋","",38)
    
    #对象:特征与技能的结合体
    #类:类是一系列对象相似的特征与相似的技能的结合体

    一、类中的数据属性:是所有对象共有的,,内存地址是一样的

    #类中的数据属性:是所有对象共有的,内存地址是一样的
    print(LuffyStudent.school,id(LuffyStudent.school))
    print(stu1.school,id(stu1.school))
    print(stu2.school,id(stu2.school))
    print(stu3.school,id(stu3.school))

    二、类中的函数属性:是绑定给对象使用的,绑定到不同的对象是不同的绑定方法

    对象调用绑定方法时,会把对象本身当作第一个参数传入到self

    stu1.learn()  # learn(stu1)
    stu1.sleep()  # sleep(stu1)
    stu2.learn()  # learn(stu2)
  • 相关阅读:
    解决asp.net mvc的跨域请求问题
    centos安装nodejs
    webapi中配置返回的时间数据格式
    centos安装django
    在Linux CentOS 6.6上安装Python 2.7.9
    nginx日志切割脚本
    apache单ip配置多端口多站点
    centos开启rewrite功能
    Fast Matrix Operations
    1400
  • 原文地址:https://www.cnblogs.com/nanjo4373977/p/12167193.html
Copyright © 2020-2023  润新知