Python学习教程(六)数据结构List
- 前言
- 1.定义
- 2.特点
- 3.常用方法
-
- [3.1 len](#3.1 len)
- [3.2 append](#3.2 append)
- [3.3 insert](#3.3 insert)
- [3.4 remove](#3.4 remove)
- [3.5 pop](#3.5 pop)
- [3.6 sort](#3.6 sort)
- [3.7 reverse](#3.7 reverse)
- [3.8 max](#3.8 max)
- [3.9 min](#3.9 min)
- 4.修改列表中的元素
- 5.遍历列表
- 6.总结
前言
Python中也提供了我们常用的数据结构,比如List(列表)、tuple(元组)、set(集合)、dict(字典)。这一篇我们先来学习List(列表),List(列表)可以用来存储多个数据,和Java中的数组、ArrayList有点类似,在实际项目中使用频率也非常高。有Java基础的小伙伴学习起来相对简单,我们直接开始吧。
1.定义
定义List(列表),使用方括号。
列表名 = [元素1, 元素2, 元素3]
代码:
iList = [1, 2, 3, 4, 5, 6]
print(iList)
运行结果:
[1, 2, 3, 4, 5, 6]
也可以定义一个空列表:
empty_list = []
print(empty_list)
运行结果:
[]
列表中的元素通过下标访问,下标从0开始。
iList = [1, 2, 3, 4, 5, 6]
print(iList[0])
print(iList[1])
print(iList[5])
运行结果:
1
2
6
如果访问不存在的下标,会报错:
iList = [1, 2, 3]
print(iList[5])
会出现下标越界错误。
也可以通过下标反向访问列表。
代码:
print(iList[-1])
运行结果:
6
下标如果是-1,就是取最后一个元素。
2.特点
List(列表)有以下几个特点:
- 可以存放不同类型的元素
- 元素可以重复
- 元素可以修改
- 元素是有序的,可以通过下标访问
直接上代码看一下:
my_list = [1, "hello", 3.14, True, 1]
print(my_list)
print(my_list[0])
print(my_list[1])
运行结果:
[1, 'hello', 3.14, True, 1]
1
hello
可以看到,List(列表)中可以同时存放整数、字符串、浮点数、布尔值,并且元素1也可以重复出现。
实际项目中,推荐List(列表)中存放同一类型的数据。
3.常用方法
下面我们来看下List(列表)中常用的方法。
3.1 len
len方法用来获取列表中元素的个数。
iList = [1, 2, 3, 4, 5, 6]
print(len(iList))
运行结果:
6
3.2 append
append方法用来在列表末尾添加元素。
iList = [1, 2, 3]
iList.append(4)
print(iList)
运行结果:
[1, 2, 3, 4]
append每次只能添加一个元素。
iList = [1, 2, 3]
iList.append("hello")
print(iList)
运行结果:
[1, 2, 3, 'hello']
3.3 insert
insert方法用来在指定位置插入元素。
语法:
列表名.insert(下标, 元素)
代码:
iList = [1, 2, 3, 4]
iList.insert(1, 100)
print(iList)
运行结果:
[1, 100, 2, 3, 4]
这里的意思是在下标为1的位置插入100,原来的元素会往后移动。
3.4 remove
remove方法用来删除列表中的指定元素。
iList = [1, 2, 3, 4, 5]
iList.remove(3)
print(iList)
运行结果:
[1, 2, 4, 5]
如果列表中有多个相同的元素,remove只会删除第一个匹配到的元素。
iList = [1, 2, 2, 3, 4]
iList.remove(2)
print(iList)
运行结果:
[1, 2, 3, 4]
3.5 pop
pop方法用来删除元素,并返回该元素,如果不指定下标,默认删除最后一个元素。
iList = [1, 2, 3, 4, 5]
iList.pop()
print(iList)
运行结果:
[1, 2, 3, 4]
也可以指定下标删除元素。
iList = [1, 2, 3, 4, 5]
iList.pop(1)
print(iList)
运行结果:
[1, 3, 4, 5]
pop方法会返回被删除的元素。
iList = [1, 2, 3, 4, 5]
num = iList.pop()
print(num)
print(iList)
运行结果:
5
[1, 2, 3, 4]
3.6 sort
sort方法用来对列表进行排序,默认是升序排序。
iList = [5, 3, 1, 4, 2]
iList.sort()
print(iList)
运行结果:
[1, 2, 3, 4, 5]
如果想降序排序,可以这样写:
iList = [5, 3, 1, 4, 2]
iList.sort(reverse=True)
print(iList)
运行结果:
[5, 4, 3, 2, 1]
3.7 reverse
reverse方法用来反转列表中的元素顺序。
iList = [1, 2, 3, 4, 5]
iList.reverse()
print(iList)
运行结果:
[5, 4, 3, 2, 1]
注意,reverse只是反转顺序,不是排序。
iList = [3, 1, 5, 2, 4]
iList.reverse()
print(iList)
运行结果:
[4, 2, 5, 1, 3]
3.8 max
max方法用来获取列表中的最大值。
iList = [5, 3, 1, 4, 2]
print(max(iList))
运行结果:
5
3.9 min
min方法用来获取列表中的最小值。
iList = [5, 3, 1, 4, 2]
print(min(iList))
运行结果:
1
4.修改列表中的元素
List中的元素是可以修改的,我们可以通过下标来修改指定位置的元素。
iList = [1, 2, 3, 4, 5]
iList[1] = 100
print(iList)
运行结果:
[1, 100, 3, 4, 5]
这里把下标为1的元素修改成了100。
拓展
也可以使用del方法删除列表元素。
代码:
iList = [1, 2, 3, 4, 5]
del iList[0]
print(iList)
print(iList[0])
运行结果:
[2, 3, 4, 5]
2
原本列表中的第一个元素1被删除了,2就变成了第一个元素。
5.遍历列表
遍历列表可以使用for循环。
iList = [1, 2, 3, 4, 5]
for i in iList:
print(i)
运行结果:
1
2
3
4
5
如果想同时获取下标和值,可以使用enumerate方法。
iList = [1, 2, 3, 4, 5]
for index, value in enumerate(iList):
print(index, value)
运行结果:
0 1
1 2
2 3
3 4
4 5
6.总结
这一篇我们学习了Python中的List(列表),以及它的一些常用方法,这些方法在实际项目开发中使用频率都非常高,大家可以动手敲下代码,加深理解,好了这一篇就到这里,下一篇我们继续学习tuple元组,如果对你有帮助,点赞加关注,下篇见。