[問題] 存取 class 內的變數
假設class為:
class A(object):
def __init__(self):
self.__a='123'
self.__b='asd'
在另一個程式中要怎麼存取這兩個變數?
我知道可以用_A__a,_A__b,但我是想寫一個像是lxml.etree._Element.get()/.set()
的方法,
.get(self,key)回傳是value
.set(self,key,value)回傳是None
我想要寫出這種函式,輸入key(不含__)就可以存取value:
t=A()
t.set('a','678')#t._A__a='678'
t.get('b')#'asd'
已知可用member function:
def set(self,key,val):
setattr(self,'_A__'+key,val)
但有沒有辦法不用'_A__'改用self之類的??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.91.51
→
06/25 00:06, , 1F
06/25 00:06, 1F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):