在Python中,列表出现的概率相当高,和C语言中的一维数组有些相似。都是用索引来访问,区别在于列表中的元素可以是任意类型同时存在。以下是详细介绍。
1、定义:
list1 = [1,3,2,4,4]; 此时,整个列表里面的元素类型完全一致,跟数据就是一样的
List2=[3,2,’hello’,’fine’,’OK’]; 此时,列表元素包括整形和字符串,跟数组不一直
List3=[]; 这是空列表,什么元素都没有
因此:我们可以下结论,列表里面的元素类型可以不一样,可以定义一个空列表,所有列表的索引都是从0开始
2、访问列表
列表是以索引访问的。
List = [1,3,’Hello’,’OK’];
Print(list[1]); 执行结果:3
Print(list[2]); 执行结果是: Hello
3、更新列表(包括增加列表项)
list1=[];
list1.append(1);
list1.append(2); #插入新元素
print(list1); 执行结果是: [1, 2]
list2=[3,4,5]; 2个列表直接合并成一个新列表,用+连接
print(list1+list2); 执行结果: [1, 2, 3, 4, 5]
c=[1,2,3]; 列表*数字N 表示将列表重复N次形成一个新列表
print(c*3); 执行结果是: [1, 2, 3, 1, 2, 3, 1, 2, 3]
4、删除列表
list = [1,2,3,4,5];
del list[2]; 删除列表第三项 如果是del list 整个列表都删掉了
print(list); 执行结果是: [1, 2, 4, 5]
5、列表方法
5.1 len()
list = [1,2,3,4,5];
print(len(list)); 执行结果是5 len 返回列表元素个数
5.2 max()
list = [1,2,3,4,5];
print(max(list)); 执行结果是5,返回列表中最大的元素,注意:使用此方法,必须保证列表中的元素是同一种数据类型,要么全是数字,要么全是字符串
5.3 min()
min(list) 返回列表中最小的元素,列表中的元素必须是同一种数据类型
5.4 list()
a=(1,2,3,4,5,6);
print(list(a)); 执行结果是: [1, 2, 3, 4, 5, 6] 将元祖转化成列表
5.6 count()
List.count() 统计某个元素在列表中出现的次数
list = [1,2,3,4,1,1,5];
print(list.count(1)); 执行结果是3
5.7 extend()
在列表尾部追加参数列表元素
list1 = [1,2,3,4,5];
list2=[6,7,8];
list1.extend(list2);
print(list1); 执行结果是: [1, 2, 3, 4, 5, 6, 7, 8]
5.8 index()
查询某个元素在列表中第一次出现的位置,与字符串的index()方法相似,当要查找的元素不在列表中,则会报错。
5.9 insert()
在列表中插入某个元素
list1 = [1,2,3,4,5];
list1.insert(1,10);
print(list1); 执行结果是: [1, 10, 2, 3, 4, 5]
5.10 pop()
删除列表中的一个元素,默认是删除最后一个元素,参数是索引值
5.11 remove()
删除列表中的某一个元素,参数是元素值
5.12 reverse()
列表反向,第一项变成最后一项,最后一项变成第一项
list1 = [1,2,3,4,5];
list1.reverse();
print(list1); 执行结果是: [5, 4, 3, 2, 1]
5.13 sort()
列表从小到大排序,注意:列表中的元素需要保持同一个数据类型,要么全部数字,要么全部字符串
list1 = ['c','a','b','E'];
list1.sort();
print(list1); 执行结果是: ['E', 'a', 'b', 'c']
6、列表切片
切片本质是从列表中取数据,返回一个新列表。例如:
list1 = ['c','a','b','E'];
list2= list1[0:2];
print(list2); 执行结果是 ['c', 'a']
list1 = ['c','a','b','E'];
list2= list1[0:];
print(list2); 执行结果是: ['c', 'a', 'b', 'E']
list1 = ['c','a','b','E'];
list2= list1[:3];
print(list2); 执行结果是: ['c', 'a', 'b']
原则上是从左侧的索引处开始复制,如果左侧索引为空,则从0开始复制,一直到右侧索引处-1 结束,如果右侧索引为空,则直接到最大索引