为什么
num_list = [1, 2, 3, 4, 5]
first_num = num_list[0]
first_num = 0
print(num_list)
返回[1, 2, 3, 4, 5]
,但
dict_list = [{"num": 1}, {"num": 2}, {"num": 3}, {"num": 4}, {"num": 5}]
first_dict = dict_list[0]
first_dict["num"] = 0
print(dict_list)
返回[{'num': 0}, {'num': 2}, {'num': 3}, {'num': 4}, {'num': 5}]
?
换句话说,为什么将一个变量赋值给一个列表元素并修改该变量,只有当它是一个dict而不是一个数字时才会修改该元素?我想这可能是由于数字和字典存储在Python中的方式,但作为一个Python初学者,我不确定在哪里寻找答案。
我非常感谢你帮助我理解这种区别!