• 实例属性和类属


    1.Python是动态语言,根据类创建的实例,可以任意绑定属性

    2.给实例绑定属性的方法有两种:

      通过实例变量或者通过self变量。

    1 class Student(object):
    2     def __init__(self, name):
    3     self.name=name
    4 
    5 ##或者如下:
    6 >>>s = Student("bob")
    7 >>>s.score = 90

    如果类本身需要属性,这个属性虽然归类所有,但是类的所有实例都可以访问到。

    给实例绑定方法的用法如下:

    1 >>>def set_age(self, age):
    2            self.age = age
    3 
    4 
    5 >>>from types import MethodType
    6 >>>s.set_age = MethodType(set_age, s) ##给实例绑定一个方法
    7 >>>s.set_age(28)   ###调用实例的方法
    8 >>>s.age                 ###测试结果
    9 25

    但是给一个实例绑定的方法,对另一个实例是不起作用。(其实这样有很多的好处)

    此外:如果所有的实例都有相同的方法,可以给class绑定方法,这是类的继承

    给class绑定方法如下:

    >>>def set_score(self, score): 
            self.score = score 
    >>>Student.set_score = MethodType(set_score, Student)      

    其实和实例的绑定方法一样的。

    ***

    通常情况下:上面的set_score方法可以直接定义在class中,但是动态绑定允许我们在程序运行的

    过程中动态给class加上功能,这在静态语言中很难实现。

     

  • 相关阅读:
    移动端事件
    移动端的三种布局
    bootstrap自定义——栅格列数修改
    less文件的运行
    lessc的安装
    nodejs的安装
    jquery插件之jquery-ui
    指定网卡进行ping操作
    汇编语言从入门到精通-4标识符和表达式
    汇编语言从入门到精通-3操作数的寻址方式
  • 原文地址:https://www.cnblogs.com/lmt921108/p/7570793.html
Copyright © 2020-2023  润新知