采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
属性描述符只能不能赋值给__init__里面的属性吗?只能赋值给类属性?
属性描述符 是赋值给类的, 是用来定义结构的, 也可以赋值给实例 但是只能针对当前实例 如果你在init中初始的时候给每个实例都赋值了这个 那为什么不直接在类中定义呢
class 属性描述符1: def __get__(): def __set__(): class A: 属性1 = 属性描述符1() a1 = A() a2 = A() a1.属性1 = 15 a2.属性1 = 20 print(a1.属性1) print(a2.属性1) 结果是一样的,a1和a2用的属性描述符是同一个对象,所以我才有了这个疑问,意味着需要用不同的属性描述符1的实例化对象只能用创建一个新的class B。 我就是很好奇,能不能即便a1和a2都是A类的实例化对象,能不能用不同的属性描述符1的实例化对象,所以有了这个疑问。
前面问题提交后格式出了问题,我这里简单重新写一遍。 疑问:能不能同一个class实例化不同的object的属性使用不同的属性描述符的object对象。 属性描述符是不是只能够在类属性中使用才可以使用? 这个疑问是因为我尝试以下两种情况都有问题: 1、由于属性描述符是类属性,所以同一个类实例化两个对象,使用同一个属性描述符的实例化对象 2、在__init__中的self.属性赋值为属性描述符实例化对象,无效
属性描述符的类和实例上的问题 你可以看看这个https://stackoverflow.com/questions/12599972/descriptors-as-instance-attributes-in-python
登录后可查看更多问答,登录/注册
socket编程/多线程/多进程/线程池/asyncio并发编程/协程和异步IO
1.2k 31
1.1k 24
1.0k 16
1.4k 10
1.1k 9