Python中__slots__限制属性

美女程序员鼓励师

说明

1、想限制实例对象的属性,只允许在Person的实例对象中添加name和age属性。

2、为了达到限制的目的,Python允许在定义类别时定义__slots__()方法,限制该例子对象可以追加的属性。

使用注意

__slots__定义的属性只对当前类别的实例对象起作用,对继承的子类别不起作用

实例

>>> class Person:

...     __slots__ = ("age", "name")

...

>>> p = Person()

>>> p.age = 12

>>> p.name = "xiaoming"

>>> p.hobby = "football"

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

AttributeError: 'Person' object has no attribute 'hobby'

以上就是Python中__slots__限制属性的方法,希望对大家有所帮助。更多Python学习指路:python基础教程

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

以上是 Python中__slots__限制属性 的全部内容, 来源链接: utcz.com/z/544607.html

回到顶部