假設你有一個像一本字典:去除多餘的項目添加到Python字典時
my_dict = {'foo' : {'bar' : {}}}
而且要進行分配的順序如下:
my_dict['foo']['bar']['first'] = 1
my_dict['foo']['bar']['second'] = 2
很明顯,有一定的冗餘度的事實上,my_dict['foo']['bar']
重複。有什麼辦法可以防止這種冗餘?
謝謝!
假設你有一個像一本字典:去除多餘的項目添加到Python字典時
my_dict = {'foo' : {'bar' : {}}}
而且要進行分配的順序如下:
my_dict['foo']['bar']['first'] = 1
my_dict['foo']['bar']['second'] = 2
很明顯,有一定的冗餘度的事實上,my_dict['foo']['bar']
重複。有什麼辦法可以防止這種冗餘?
謝謝!
不是真的,當然節省了明顯的中間變量:
foo_bar = my_dict['foo']['bar']
foo_bar['first'] = 1
foo_bar['second'] = 2
如何的Python應該知道你想,除非你告訴它這樣來指代相同的詞典兩次?
,你可以在臨時持有它:
temp = my_dict['foo']['bar']
temp['first'] = 1
temp['second'] = 1
,或者您可以使用更新:
my_dict['foo']['bar'].update([('first', 1), ('second', 2)])
或有其他的選擇。
你可以這樣做:
my_dict['foo']['bar'].update({'first': 1, 'second': 2})