1.使用insert为列表插入元素时,会改变插入元素之后元素的索引
insert
语法
list.insert(index, obj)
示例
aList = [123, 'xyz', 'zara', 'abc']
aList.insert( 3, 2009)
print ("Final List : ", aList)
结果
Final List : [123, 'xyz', 'zara',2009, 'abc']
2.列表和字典都是可变数据类型
数据类型
number \ string \ tuple \ list \ dictionary \ set
可变数据类型和不可变数据类型
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组)
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
如何理解可变与不可变
定义
不可变数据类型: 当该数据类型的对应变量的值发生了改变,那么它对应的内存地址也会发生改变,对于这种数据类型,就称不可变数据类型。
可变数据类型 :当该数据类型的对应变量的值发生了改变,那么它对应的内存地址不发生改变,对于这种数据类型,就称可变数据类型。
内存地址与数据类型的对应变量
每一个数据都存放在计算机内存中,系统想调用该数据,就会自动找到存放该数据的内存,或者将新的数据写入到一块新的内存中保存。
——每一个数据(人)都有自己对应的内存(家)
进一步理解
回到定义,对于不可变数据类型,当人改变了,家也会跟着改变。即当人改变,原来的家不可以住进新的人。
对于可变数据类型,当人改变了,家不会改变,有新主人 。
这里家(内存地址)的变化即代表着“可变” or “不可变”。
更详细的解释
最详细并且直观理解Python中的可变数据类型和不可变数据类型_python中什么是可变数据类型?什么是不可变数据类型?-CSDN博客
3.列表中所有元素必须为相同类型数据
元组(tuple)
元组定义后不能更改,也不能删除。
元组中的元素不可改变,那么程序运行也就更加安全。
列表(list)
如果不考虑代码的安全性,只考虑代码的灵活性那么可以使用列表类型来代替元组类型。
字符串可以通过split()函数,将字符串拆分成一个列表。
split()
str.split(str="", num=string.count(str)).
num-->分割的次数
Python split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串