目录
零、初识列表
何为列表
列表由一系列按特定顺序排列的元素组成。这些元素之间可以有关系,也可以毫无联系。
python中用【】表示列表,并用逗号分隔其中的元素。
比如可以创建一个包含很多姓名的列表
name_list = ['lisa','jack','tom','vegetable']
print(name_list)
结果
访问列表元素
列表中每个值都有对应的位置值,称之为索引,第一个索引从0开始,第二个为1,依次类推。
访问列表中的元素,只需要指出列表名称,并指出元素索引即可
比如,我要访问列表中第一个元素,即name_list[0]
要访问列表中第二个元素,即name_list[1]
要访问列表中最后一个元素。即name_list[-1]
当然我们还可以调用昨天所说的字符串的方法,让列表输出成我们要的格式。比如说name_list[0].title()
name_list = ['lisa','jack','tom','vegetable']
print(name_list[0].title()) #打印列表中第一个元素,并将其首字母大写
print(name_list[1].title()) #打印列表中第二个元素,并将其首字母大写
print(name_list[-1].upper()) #打印列表中最后一个元素,并将其字母全部改为大写
结果:
使用列表中的值
使用 f 字符串根据列表中的值来创建消息
name_list = ['lisa','jack','tom','vegetable']
message = f"{name_list[0].title()} is my friends."
print(message)
结果:使用name_list列表里的一个值生成了一句话,并赋值给message,在打印出来
壹、列表的增删改
修改列表元素
修改列表元素也成为列表的更新,可以直接指定列表名和要修改元素的索引,在指定新值
比如,我们将列表中第一个人名 lisa 改为 sara
name_list = ['lisa','jack','tom','vegetable']
print(name_list)
name_list[0] = 'sara'
print(name_list)
结果:可以看到 lisa 被改为 sara,其他的没有改变。
给列表增加元素
你极大概率会需要在列表中增加元素,并且python提供了多种解决方法
你可以使用 append 直接在列表末尾增加一个新元素
name_list = ['lisa','jack','tom','vegetable']
print(name_list)
name_list.append('sara')
print(name_list)
结果:在列表末尾增加了我们新加入的元素
你也可以使用 insert 在列表中插入元素
name_list = ['lisa','jack','tom','vegetable']
print(name_list)
name_list.insert(1,'sara') #在索引 1 处增加了元素,sara
print(name_list)
结果:
这种方法将新元素插入到索引 1 处,并将之后的元素向后挪一个位置。
列表中删除元素
如果已知元素在列表中的位置,可以直接使用 del 删除
name_list = ['lisa','jack','tom','vegetable']
print(name_list)
del name_list[0]
print(name_list)
结果:可以看到索引 0 处的 lisa 被删除
如果未知索引,还可以使用 remove 根据元素值来删除
name_list = ['lisa','jack','tom','vegetable']
print(name_list)
name_list.remove('lisa')
print(name_list)
结果:可以看到,程序同样删除了 lisa
需要注意的是,remove 只会删掉第一个指定值,如果该值在列表中多次出现,还需要删除所有指定值,就需要使用循环遍历。
贰、组织列表
对列表进行永久排序
使用 sort 按照字母对列表中的元素进行排序,排序后无法在改为之前的顺序
name_list = ['lisa','jack','tom','vegetable']
name_list.sort()
print(name_list)
结果:
如果需要倒着排序,需要向 sort() 方法传递参数 reverse = True
name_list = ['lisa','jack','tom','vegetable']
name_list.sort(reverse = True)
print(name_list)
结果:
对列表进行临时排序
不想让列表顺序被打乱,还想以更好地顺序呈现,可以尝试 sorted() 来临时排序
name_list = ['lisa','jack','tom','vegetable']
print(sorted(name_list)) #临时按照首字母排序
print(name_list) #原始排序
结果
倒着打印列表
我们可以借助 reverse() 反转列表,让列表元素倒向排列
此时,reverse 并不是以首字母顺序相反的排列顺序,而是直接倒转原始列表
name_list = ['lisa','jack','tom','vegetable']
print(name_list)
name_list.reverse()
print(name_list)
结果:
确定列表长度
可以直接使用 len() 快速获取列表长度,这样我们可以很快速的知道列表中还有多少个元素。
name_list = ['lisa','jack','tom','vegetable']
print(len(name_list))
结果:
叁、小结
今天差一点就不能完成今日的任务了,但还是硬生生的把这个时间挤了出来,又印证了某位名人说的话(大概是鲁迅),时间就像是海绵里的水,只要挤,总是会有的,大概是这样说的吧,记不大清了。
革命尚未成功,同志仍需努力。期待美好的明天!