zoukankan      html  css  js  c++  java
  • __slots__ 属性绑定

    s = Student() # 创建新的实例
    s.name = 'Michael' # 绑定属性'name'
    s.age = 25 # 绑定属性'age'
    s.score = 99 # 绑定属性'score'

    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    AttributeError: 'Student' object has no attribute 'score'

    由于'score'没有被放到__slots__中,所以不能绑定score属性,试图绑定score将得到AttributeError的错误。

    使用__slots__要注意,__slots__定义的属性仅对当前类起作用,对继承的子类是不起作用的:

    除非在子类中也定义__slots__,这样,子类允许定义的属性就是自身的__slots__加上父类的__slots__

  • 相关阅读:
    ruby 类库组成
    ruby 数据类型Number
    ruby require的使用
    ruby $LOAD_PATH及类加载
    ruby编码说明
    RubyMine常用快捷键
    基础
    基础
    基础
    基础
  • 原文地址:https://www.cnblogs.com/cutepython/p/6006851.html
Copyright © 2011-2022 走看看