一、引入
通过前面学习的字符串我们可以实现用它存储一串信息,例如一个人的名字"wanglaoshi"
,那么如何存储咱们班所有同学的名字呢?
定义100个变量,每个变量存放一个学生的姓名可行吗?有更好的办法吗?
答:列表
二、定义
定义列表的方式是[]
如下:用列表存储了3个学生的姓名
stu_names = ['wanglaoshi', 'dongge', 'dong4716138']
如下:用列表存储了5个分数
scores = [100, 99, 100, 95, 90]
三、基本使用
1. 下标
列表中存储的多个数据,我们可以对这些数据任意的使用
方式是:通过下标可以实现定位,然后就可以用这个数据
例如
stu_names = ['wanglaoshi', 'dongge', 'dong4716138'] print(stu_names[0]) # 此时只输出wanglaoshi stu_names[0] = "Wang Lao Shi" print(stu_names[0]) # 此时只输出Wang Lao Shi
注意:下标依然是从0开始使用
2. 切片
切片具体的知识我们已经学习过了,在列表也是支持切片操作的
stu_names = ['wanglaoshi', 'dongge', 'dong4716138'] stu_names[1:3] # 此时得到一个新列表['wanglaoshi', 'dongge']
列表逆序
stu_names = ['wanglaoshi', 'dongge', 'dong4716138'] stu_names = [::-1] # 得到一个新列表['dong4716138', 'dongge', 'wanglaoshi']
3. 遍历
所谓列表遍历,就是指将l将列表中的所有的数据依次获取打印
方式1:使用for循环(非常方便)
为了更有效率的输出列表的每个数据,可以使用循环来完成
stu_names = ['wanglaoshi', 'dongge', 'dong4716138'] for name in stu_names: print(name)
结果:
wanglaoshi dongge dong4716138
方式2:使用while循环
为了更有效率的输出列表的每个数据,可以使用循环来完成
stu_names = ['wanglaoshi', 'dongge', 'dong4716138'] length = len(stu_names) i = 0 while i<length: print(stu_names[i]) i+=1
结果:
wanglaoshi dongge dong4716138
四、注意
学习其他编程语言的同学,此时能够看到Python中的列表
与C语言
、C++
语言、Java
中的数组
很类似
相同点:列表和数组都能实现多个数据的存储
不同点:列表可以存储不同类似的数据,而数组只能存储相同数据类型。
如下代码,完成了一个列表存储了多个信息
teacher = ["王老师", "山东省青岛市", 18, 176.5] # 18为年龄,176.5为身高
技巧:虽然Python中的列表可以存储多个不同的数据类型,但一般情况下我们很少这么做,而是把数据类型相同的数据放到一个列表,这样操作时会更加方便,否则就会出现一会整数,一会字符串很容易出错
如果真的需要存储多个数据,例如一个人的信息由多个组成,此时一般用Python中的字典
来进行存储