Re: [問題] 有關vars()的問題
※ 引述《DEATHX (幽光)》之銘言:
: class Struct(object):
: def __init__(self, **data):
: if data:
: vars(self).update(data)
: def __setstate__(self, data):
: vars(self).update(data)
: def __getstate__(self):
: return vars(self)
: 如上,小弟僅知道__init__類似建構子,self類似c++的this指標,
: 但是在c++裡面this直接可以使用,為何pythonu要把self當作參數?
: 還是可以不傳?最後的vars()也是看不大懂,爬了一下python的網站,
: 找了半天沒找到vars()是做什麼的,只好上來求助.
: 懇請各位先進不吝解惑.
self明確寫出是Python的風格:「Explicit is better than implicit.」
__init__是物件建構後的初始流程,建構式的角色比較像是__new__所擔任:
http://caterpillar.onlyfun.net/Gossip/Python/NewInitDel.html
vars()是列出範圍內變數,或物件上的特性,help(vars)可以看說明。
--
良葛格學習筆記
http://openhome.cc
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 115.82.198.102
→
06/04 10:33, , 1F
06/04 10:33, 1F
討論串 (同標題文章)
Python 近期熱門文章
PTT數位生活區 即時熱門文章