拆包和装包
在python的学习中,我们经常会遇到两个可变变量:
(1)*args
(2) ** kwargs
变量的名字不重要,重要的是 * 和 ** 两个符号,*代表的就是该变量是可变数据类型。
注意:可变数据类型和不可变数据类型
-
可变数据类型:是指当该数据对应变量的值发生变化的时候,对应内存地址并没有开辟出新的内存去接收新值,而是在原来的内存空间上进行修改。eg:列表,集合,字典都是可变数据类型
-
不可变数据类型:对象所指向的内存中的值是不可以改变,也就是如果给不可变数据类型做修改,则内存地址发生变化。eg:int就属于不可变数据类型
给个代码体会一下可变数据类型和不可变数据类型:
#可变数据类型测试
list1=[]
print("数据类型:",type(list1))
print("列表内容:",list1," ","列表地址:",id(list1))
list1.append(5)
print("修改后列表内容:",list1," ","修改后列表地址:",id(list1))
#不可变数据类型测试
a=4
print("数据类型:",type(a))
print(