首页 > 试题广场 >

以下代码中,descriptor的__set_name__方

[单选题]
以下代码中,descriptor的__set_name__方法何时被调用? ```python class Validator: def __set_name__(self, owner, name): self.public_name = name self.private_name = '_' + name def __get__(self, obj, objtype=None): return getattr(obj, self.private_name) def __set__(self, obj, value): setattr(obj, self.private_name, value) class MyClass: x = Validator() ```
  • 在执行x = Validator()进行实例化时
  • 在MyClass实例化时
  • 在MyClass类体定义执行完毕、type.__new__调用时
  • 在第一次访问MyClass.x时
  • 在Validator()实例化时

这道题你会答吗?花几分钟告诉大家答案吧!