python基本数据结构
python的数据结构来回学习很多遍,这次进行归纳总结,方便python的初学者查看,包括列表,字典,元祖,集合,文章会从增删查的维度改来演示
1、列表(list)
创建列表的2中方式
方式1: 使用[ ] 直接创建列表
a = []
print(a)
方式2:使用list() 内置函数,可以将其他类型转换成列表类型
m = "hello"
print(list(m))
n = (1,2,3)
print(list(n))
访问列表元素
方式1:通过索引访问
list1 = ["java", "python", "C", "C++"]
print(list1[0])
print(list1[1])
方式2:通过切片访问列表元素
list1 = ["java", "python", "C", "C++", "Ruby", "PHP", "JavaScript", "Vue"]
print(list1[0:2])
另外也可以指定步长
list1 = ["java", "python", "C", "C++", "Ruby", "PHP", "JavaScript", "Vue"]
print(list1[0:8::2])
补充点:
这里有个问题是,使用append() 添加元素是添加引用地址,而不是元素内容,当被添加的列表元素发生变化时,添加后的列表也会同步发生变化
从输出的结果来看,当被添加的列表元素发生变化时,原列表内容也发生了变化,我们通过id() 函数来验证一下
原因可能就出在引用地址上面,这里可以去了解下深拷贝和浅拷贝的区别
下面用深拷贝试试,
向列表添加元素的3种方式
方式1:
append()方法添加元素,含义是将元素添加到末尾
可以添加任意类型的元素
方式2:extend() 方法添加元素,表示添加到列表末尾
可以将另一个列表中的元素都一个个添加到原有列表的末尾
list1 = ["java"]
list2 = [1, 2, 3, 4]
list1.extend(list2)
print(list1)
方式三: 通过insert方式添加元素
list1 = ["java"]
list2 = [1, 2, 3, 4]
list1.insert(0,"Python")
print(list1)