2012年5月28日 星期一

[python]dict[x]後串接list()

使用python寫程式時,會遇到需要整理資料的場合,最好是用資料的類別或者ID做索引,對於資料的呈現或是寫入資料庫時,程式都有比較好的架構,但是python只有支援dictionary和list並沒有整合的data structure,所以要自己寫一個。
因為當初自己寫時有遇到些問題,所以配合這一篇,把寫法記錄下來,希望對要用到的人會有幫助。

1. 在要新增一筆資料的時候檢查是否已經被初始化為list
d = {}
d[key] = list()
d[key].append(value)
初始化後就可以使用.append()當成list用了,不過需要檢查是否已經被初始化過了,避免重複初始化。
initialize
d = {}
check
if key not in d:
    d[key] = list()
d[key].append(value)
2. setdefault

initialize
d = {}
setdefault
d.setdefault(t,list()).append( c )
會將dictionary預設為list()

1 則留言: