【发布时间】:2021-10-14 13:44:44
【问题描述】:
我正在尝试在这个简单的类中做 getter setter,
class Person:
def __init__(self, n):
self.name = n
def get_name(self):
return self.name
def set_name(self, n):
self.name = n
name = property(get_name, set_name)
p = Person('Lewis')
p.name = 'Philo'
看起来非常简单明了,但不知何故它不起作用,我错过了什么,帮助我找到我出错的理解。
我收到以下错误。
Traceback (most recent call last):
File "/Users/napoleon/python-play/oops/person.py", line 15, in <module>
p = Person('Lewis')
File "/Users/napoleon/python-play/oops/person.py", line 4, in __init__
self.name = n
File "/Users/napoleon/python-play/oops/person.py", line 10, in set_name
self.name = n
File "/Users/napoleon/python-play/oops/person.py", line 10, in set_name
self.name = n
File "/Users/napoleon/python-play/oops/person.py", line 10, in set_name
self.name = n
[Previous line repeated 994 more times]
RecursionError: maximum recursion depth exceeded
【问题讨论】:
标签: python properties