Python 变量和参数传递

Python 变量和参数传递,python,variable-assignment,Python,Variable Assignment,当我们编写以下代码时: a = [1,2] b = a a.append(3) print(b) 这里,列表对于a和b都变成了[1,2,3]。 但当我执行代码时: a=3 b=a b+=1 在a=3和b=4的情况下不会发生同样的事情。 那么,有人能给我解释一下原因吗。 此外,哪种数据类型用作列表,哪种数据类型用作整数。将a的值赋给b,使b变为3,然后在b中再加1,使b的值变为4

当我们编写以下代码时:

a = [1,2]
b = a
a.append(3)
print(b)
这里,列表对于a和b都变成了[1,2,3]。 但当我执行代码时:

a=3
b=a
b+=1
在a=3和b=4的情况下不会发生同样的事情。 那么,有人能给我解释一下原因吗。
此外,哪种数据类型用作列表,哪种数据类型用作整数。

将a的值赋给b,使b变为3,然后在b中再加1,使b的值变为4