1
我有三個Python類,Student
,Event
和StudentEvent
。酸洗互相引用的對象
爲了簡單:
class Student:
def __init__(self, id):
self.id = id
class Event:
def __init__(self, id):
self.id = id
self.studentevents = []
class StudentEvent:
def __init__(self, student, event, id):
self.student = student
self.event = event
self.id = id
我有這些類,我投入,我可以閱讀和分析詞典的情況下的千百萬之間。閱讀和創建對象需要很長時間,所以我想將它們醃製成3個字典,即students_dict
,events_dict
,studentevents_dict
。
所以,很好,我可以做到這一點。但是,如果我稍後再對字典進行醃製,studentevents_dict
中的學生和事件將不會引用students_dict
和events_dict
中相同的Students
和Events
,對嗎?
如果我修改的對象在稍後的時間,例如,填充在Event
對象關聯StudentEvents
的列表中,因爲由StudentEvent
引用的事件將不會是Event
用相同的ID中,可能會出現問題events_dict
。
對於大小的數據集,你可能要考慮切換到喜歡的SQLite數據庫。 – 2014-10-02 18:00:29
對於我提出的情況,這肯定會更快,但是我已經隱藏了很多類方法和計算以及其他垃圾,我想從上述問題的定義中爲每個單獨對象保留這些內容酸洗彼此引用的物體。不過好的建議! – 2014-10-02 21:33:52