字符串 列表 元组 字典 集合3.4列表

一、引入

通过前面学习的字符串我们可以实现用它存储一串信息,例如一个人的名字"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中的字典来进行存储

原文地址:https://www.cnblogs.com/dong4716138/p/15667785.html