[問題] @property 真正的運用是啥
各位好
最近兩個月開始學python, 有些問題實在是搞不懂, 其中一個是 @property
我看很多教學都說是保護變數,
例如
@property
def name(self):
return self._name
@name.setter
def name(self, new_name):
self._name = new_name
然後可以使用 instance p,
p.name 取值, p.name = 1 設值
我的疑問是,
1. 這根本無法保護變數,為什麼教程還要說這種寫法保護變數
2. 加那個@property @name.setter, 到底有什麼好處?
我如果不使用@property, 而是把方法名稱改成 get_name, 跟 set_name 程式碼讀起來,不是更清楚明白嗎?
有沒有很有經驗的大大,能幫我解惑一下
感恩
--
Sent from nPTT on my iPhone 12
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.227.112.12 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1736153522.A.5AD.html
推
01/06 17:06,
5天前
, 1F
01/06 17:06, 1F
→
01/06 17:06,
5天前
, 2F
01/06 17:06, 2F
→
01/06 17:06,
5天前
, 3F
01/06 17:06, 3F
→
01/06 17:06,
5天前
, 4F
01/06 17:06, 4F
→
01/06 17:06,
5天前
, 5F
01/06 17:06, 5F
→
01/06 17:06,
5天前
, 6F
01/06 17:06, 6F
→
01/06 17:06,
5天前
, 7F
01/06 17:06, 7F
推
01/07 13:24,
4天前
, 8F
01/07 13:24, 8F
→
01/07 13:25,
4天前
, 9F
01/07 13:25, 9F
推
01/07 13:41,
4天前
, 10F
01/07 13:41, 10F
推
01/07 13:46,
4天前
, 11F
01/07 13:46, 11F
→
01/07 14:30,
4天前
, 12F
01/07 14:30, 12F
→
01/07 14:33,
4天前
, 13F
01/07 14:33, 13F
→
01/07 14:33,
4天前
, 14F
01/07 14:33, 14F
→
01/08 09:21,
3天前
, 15F
01/08 09:21, 15F
Python 近期熱門文章
PTT數位生活區 即時熱門文章