作者mail6543210 (mail6543210)
站内Python
标题[问题] 存取class 内的变数
时间Thu Jun 16 00:02:17 2011
假设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
1F:→ uranusjr:如果你要这样做, 就不要把它用 __ 修饰啊......... 06/25 00:06