python list:
b = a是淺拷貝,b = list(a)和b = copy.cpoy(a)是深拷貝。
淺拷貝,a和b指向的是一個地址。當b改變後,a也會改變。
深拷貝,a和b指向的是兩個地址,當b改變後,a不受影響。
Java list:
list2 = Lists.newArrayList(list1)是深拷貝,list3 = list1是淺拷貝。
深拷貝,list2改變後,list1的值不會改變。
淺拷貝,list3改變後,list1的值也會改變。
python dataframe:
深拷貝,pd.DataFrame.copy(user_info, deep=True),原值改變,複製的新值不會改變。
淺拷貝,pd.DataFrame.copy(user_info, deep=False),原值改變,複製的新值也改變。
淺拷貝: user_info_copy2 = user_info