python两个有趣属性
__all__可用于模块导入时限制,如:
from module import *
此时被导入模块若定义了__all__属性,则只有all内指定的属性、方法、类可被导入~
若没定义,则模块内的所有将被导入。
__slots__用于限定类属性,如:
class A(object):
__slots__ = ['var']
此时外部调用时,如:
a = A()
a.var = 4 #不会报错
a.other = 4 #此时则会抛出异常AttributeError