zoukankan      html  css  js  c++  java
  • Python学习系列之动态绑定属性和方法(二十六)

     动态绑定属性和方法

     Python是动态语言,在创建对象之后,可以动态地绑定属性和方法

     1. 动态地绑定属性

    代码示例:

    '''动态地绑定属性'''
    class Student:
        def __init__(self,name,age):
            self.name=name
            self.age = age
    
        #实例方法
        def eat(self):
            print('学生在吃饭...')
    
    stu1=Student('张三',20)
    stu2=Student('李四',30)
    stu1.gender='女'     #动态绑定性别
    print(stu1.name,stu1.age,stu1.gender)
    print(stu2.name,stu2.age)
    

      执行结果:

     说明:一个Student类可以创建N个Student类的实例对象,每个实体对象的属性值可以不同

     代码示意图如下:

    2. 动态的绑定方法

    '''动态地绑定方法'''
    class Student:
        def __init__(self,name,age):
            self.name=name
            self.age = age
    
        #实例方法
        def eat(self):
            print('学生在吃饭...')
    
    stu1=Student('张三',20)
    stu2=Student('李四',30)
    # stu1.gender='女'     #动态绑定性别
    # print(stu1.name,stu1.age,stu1.gender)
    # print(stu2.name,stu2.age)
    
    def show():  #函数
        print('我是动态绑定的函数')
    stu2.show=show  #动态绑定方法,函数绑定到对象上就是方法
    stu2.show()   #stu1.show()执行时会报错AttributeError,因为stu1没有绑定show方法

      执行结果

     说明:stu2.show=show   是动态绑定方法的写法

    ----------------------------------

    类对象总结:

    类对象有类属性、类方法、静态方法、实例方法

    实例对象使用类名()创建实例对象c

    实例对象可以动态绑定属性,stu1.gender='女'

    实例对象可以动态绑定方法,stu2.show=show   stu2.show()

  • 相关阅读:
    Windows10切换其他用户身份运行程序
    管理Windows功能
    如何暂时锁定您的键盘
    判断远程计算机基于x64或x86处理器
    复制文件而不在命令行中覆盖它们
    解决IDEA Gradle工程控制台输出乱码
    jquery 选择器、属性和CSS、文档处理、筛选、事件、动画效果
    IDEA炫酷主题推荐!(转)
    Windows 查看端口占用进程并关闭(转)
    JVM(二)--运行时数据区
  • 原文地址:https://www.cnblogs.com/wx170119/p/14469161.html
Copyright © 2011-2022 走看看