當(dāng)我必須向不存在的列表中插入一個(gè)值時(shí),我發(fā)現(xiàn)自己總是寫這種丑陋的片段:if hasattr(obj, 'key'):
obj.key = []
obj.key.append(value)當(dāng)然,我可以使用defaultdict(list),但在這個(gè)用例中我不能先驗(yàn)地做。有沒(méi)有更pythonic但更簡(jiǎn)單的方法來(lái)實(shí)現(xiàn)這一目標(biāo)?
1 回答

慕村225694
TA貢獻(xiàn)1880條經(jīng)驗(yàn) 獲得超4個(gè)贊
你可以調(diào)用setdefault
實(shí)例字典,即
vars(obj).setdefault('key', []).append(value)
添加回答
舉報(bào)
0/150
提交
取消