1
我在進行數據存儲和檢索時遇到問題。類臨時數據存儲區,Python
什麼,我想要做的本質是創造盒A和乙欄
每個包廂有不同的描述,並在他們的項目清單,它們是由Box_handler訪問。
基本上是:
class Box_Handler(object):
def __init__(self,which_box):
self.which_box = which_box
def call_box(self):
if self.which_box == 'A':
self.contents = Box_A().load()
elif self.which_box == 'B':
self.contents = Box_B().load()
print(self.contents)
class Box_A(object):
def __init__(self):
self.contents = ['banana,apple,pear']
def box_store(self):
self.contents = self.contents+['guava']
def load(self):
return self.contents
class Box_B(object):
def __init__(self):
self.contents = ['orange,fig,grape']
def box_store(self):
self.contents = self.contents+['guava']
def load(self):
return self.contents
A = Box_A()
B = Box_B()
A.box_store()
B.box_store()
Box_Handler('A').call_box()
Box_Handler('B').call_box()
它不打印番石榴,因爲每次類運行時,它觸發初始化,所以我想將在初始化器那永遠只能運行一次,但我遇到了同樣的問題需要一個變量來激活初始化程序
有沒有人有工作? 我聽說泡菜,但如果我有一千盒,我需要一千個文件??!
對不起,如果太簡單了,但我似乎無法找到最簡單的方法。
這肯定回答OP的問題,但我覺得好像有是被忽視的一個嚴重缺陷的設計。 – SethMMorton
@SethMMorton哦,我明白你的意思了。更新了我的答案。請立即檢查。 – thefourtheye
謝謝你的答案,它確實工作。 但是爲什麼?不是, self.contents = Box_B()。load() 與 相同self.contents = self.which_box.load()?? – NewbieGamer