運行下面的代碼是否會報錯,如果報錯請說明哪里有什么樣的錯,如果不報錯請說出代碼的執行結果。
class A: def __init__(self, value): self.__value = value @property def value(self): return self.__value obj = A(1) obj.__value = 2 print(obj.value) print(obj.__value)
點評:
這道題有兩個考察點:
一個考察點是對_和__開頭的對象屬性訪問權限以及 @property裝飾器的了解
另外一個考察的點是對動態語言的理解,不需要過多的解釋。