分析以下使用元类(Metaclass)动态修改类属性的代码,并预测其最终输出:
class AttrModifierMeta(type):
def __new__(mcs, name, bases, attrs):
print("Meta.__new__ executing")
attrs['X'] = 100
return super().__new__(mcs, name, bases, attrs)
def __init__(cls, name, bases, attrs):
print("Meta.__init__ executing")
cls.X += attrs.get('Y', 0)
super().__init__(name, bases, attrs)
class MyData(metaclass=AttrModifierMeta):
X = 10
Y = 5
print(MyData.X)

