當前位置:成語大全網 - 新華字典 - python字典操作問題

python字典操作問題

應為在python中dict是可變對象。用dic1賦值給dic3後,並沒有創建壹個新的對象,dic3和dic1指向同壹個對象。通過dic3改變其內容,就如同通過dic1改變對象內容壹樣。

具體的內容妳可以看看深拷貝和淺拷貝

import?copy

def?com_weight(dic1,dic2):

dic3?=?copy.deepcopy(dic1)?#深拷貝,,,,

for?i?in?dic1.keys():

for?j?in?dic1[i].keys():

dic3[i][j]=dic1[i][j]-dic2[i][j]

print?dic3

if?__name__=='__main__':

dic1?=?{1:?{1:?142264,?2:?142315},?2:?{3:?142111},?3:?{3:?142723}}

dic2?=?{1:?{1:?142263,?2:?142312},?2:?{3:?142110},?3:?{3:?142722}}

print?'__________________'

print?dic1

print?dic2

print?'*******************'

com_weight(dic1,?dic2)

print?'~~~~~~~~~~~~~~~~~~~~~~~~'

print?dic1

print?dic2