序列是一种数据存储方式,用来存储一系列的数据。在内存中,序列就是一块用来存放多个值的连续的内存空间。比如一个整数序列[10,20,30,40],
可以这样示意表示:
由于 Python3 中一切皆对象,在内存中实际是按照如下方式存储的:
a = [10,20,30,40]
从图示中,我们可以看出序列中存储的是整数对象的地址,
而不是整数对象的值。
python中常用的序列结构有:字符串、列表、元组、字典、集合
1 列表简介
列表:用于存储任意数目、任意类型的数据集合。
列表是内置可变序列,是包含多个元素的有序连续的内存空间。列表定义的标准语法格式:
a = [10,20,30,40] 其中,10,20,30,40 这些称为:列表 a 的元素 列表中的元素可以各不相同,可以是任意类型。比如:a = [10,20,'abc',True]
2.基本语法[]创建
>>> a = [10,20,'gaoqi','sxt'] >>> a = [] #创建一个空的列表对象 >>> a.append(20) >>> a[0] 20
3 列表元素的增加和删除
当列表增加和删除元素时,列表会自动进行内存管理,大大减少了程序员的负担。但这个特点涉及列表元素的大量移动,效率较低。除非必要,我们一般只在列表的尾部添加元素或删除元素,这会大大提高列表的操作效率。
>>> a = [20,40] >>> a.append(80) >>> a [20, 40, 80]
4 列表元素的删除
4.1 del 删除
>>> a = [100,200,888,300,400] >>> del a[1] >>> a [100,200,300,400]
4.2 pop()方法
pop()删除并返回指定位置元素,未指定位置则默认操作列表最后一个元素
>>> a = [10,20,30,40,50] >>> a.pop() 50 >>> a [10, 20, 30, 40] >>> a.pop(1) 20 >>> a [10, 30, 40]
5 列表排序
5.1 修改原列表,不建新列表的排序
>>> a = [20,10,30,40] >>> id(a) 46017416 >>> a.sort() #默认是升序排列 >>> a [10, 20, 30, 40] >>> a = [10,20,30,40] >>> a.sort(reverse=True) #降序排列 >>> a [40, 30, 20, 10] >>> import random >>> random.shuffle(a) #打乱顺序 >>> a [20, 40, 30, 10]