首页 新闻 会员 周边 捐助

property递归引用,自定义描述符正常

0
[已关闭问题] 关闭于 2025-08-28 11:04

class Student():
def init(self, stuid, name, score1, score2, score3):
self.stuid = stuid
self.name = name
self.score1 = score1
self.score2 = score2
self.score3 = score3

def get_score1(self):
    return self._score1

def set_score1(self, score):
    if 0 <= score <= 100:
        self._score1 = score
    else:
        raise ValueError("score not in [0,100]")

def get_score2(self):
    return self._score2

def set_score2(self, score):
    if 0 <= score <= 100:
        self._score2 = score
    else:
        raise ValueError("score not in [0,100]")

def get_score3(self):
    return self._score3

def set_score3(self, score):
    if 0 <= score <= 100:
        self._score3 = score
    else:
        raise ValueError("score not in [0,100]")

score1 = property(get_score1, set_score1)
score2 = property(get_score2, set_score2)
score3 = property(get_score3, set_score3)

def returnMe(self):
    return "%s, %s, %i, %i, %i" % (
        self.stuid,
        self.name,
        self.score1,
        self.score2,
        self.score3)

这段代码报递归引用了

问题补充:

自定义描述符,__init__里面就是赋值给了描述符,property里面为啥不用

_java_python的主页 _java_python | 小虾三级 | 园豆:984
提问于:2025-08-27 16:53
< >
分享
所有回答(1)
0

经测试,property无法在初始化时候判断的,不是不用,是做不到

_java_python | 园豆:984 (小虾三级) | 2025-08-28 11:04
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册