python:列表

列表是python最常用的数据存储类型,它可以存储大量的数据。列表具有索引的概念,可以通过索引操作列表中的数据。列表中的数据可以进行添加、删除、修改、查询等操作。列表中的是有序的和可重复的,可以存储任何类型的数据。其实列表这种数据存储数据类型在其他语言中也是有的,Java c/c++语言中被叫做数组。两者很像,但是两者有着本质的区别,这个我们在后面的引用部分再具体说明。

创建一个列表其实很简单,只需把逗号分隔的不同数据项使用方括号括起来就可以了。

list1 = []  # 空列表
list2 = list() # 空列表
list3 = [1, 2, 'a',]

一、列表的基本操作

1.1 获取/修改列表中的值
列表具有索引的概念,所以我们从列表中取值/修改可以用索引进行,需要注意的是:列表的索引是从0开始的,最大索引为列表元素个数减一,使用索引不能超出最大索引,否则会报错。具体方法就是:
取值:列表名[索引]:
修改值:列表名[索引] = 值

list1 = [1, 2, 'a']
print('list1[0]:',list1[0]) # 取值
print(list1)  # 显示列表中所有的值
list1[2] = 3  # 修改索引为2的值
print(list1)  # 显示列表中所有的值

在这里插入图片描述
当然我们也可以使用循环遍历我们的数组,再通过判断来从列表中取出我们需要的值:

# 打印列表中的偶数
list2 = [1, 2, 4, 4, 10, 6, 9, 8, 9, 10]
for i in list2:
	if i % 2 == 0:
		print('%d是偶数' %i)

在这里插入图片描述

1.2 添加列表元素

我们可以直接使用索引修改列表对应位置的元素,我们可以使用append、extend、insert函数为列表添加元素。

  • append(data):在列表的末尾添加数据
list3 = [1, 2, 3, 4, 5, 6]
# 添加元素
list3.append(7)
print("list3:",list3)
# 添加的元素也是列表
list3.append([7, 8, 9])
print("list3:",list3)

在这里插入图片描述

  • 使用extend()是在列表的末尾添加参数对象中的所有数据:(其实后面我们学的元组,集合都可以用这种方法,将其中的元素逐一添加到列表中)
list4 = [1,2,3]
list4.extend([4,5,6])
print(list4)
list4.extend('abc')
print(list4)

在这里插入图片描述

  • insert(idx,data):在列表的指定位置插入数据,如果索引位置超过列表数据总量,数据将插入到列表末尾。idx:插入数据的索引位置,data:加入列表中的数据
list5 = [1,2,3]
list5.insert(0,"csx")
print(list5)

在这里插入图片描述
1.3、删除列表元素

  • 可以使用 del 来删除列表的的元素,它根据下标删除指定元素,其实它也可以删除整个列表,但是列表不能再使用了,需要重新定义列表:(这里的删除列表,只是删除了引用,通知cpu这块地方这个地方可以被占用了,而不是直接释放内存空间)
list6 = ['a','b','c']
print(list6)
del list6[2]  # 删除指定元素
print(list6)
del list6 # 删除列表    
print(list6)

在这里插入图片描述

  • 使用pop删除指定位置元素,删除同时会将删除元素返回:
list7 = ['a','b','c','d','e','f']
print(list7)
del_date = list7.pop()  # 从末尾删除元素
print(del_date )
del_date2 = list7.pop(2)  # 删除索引为2的元素
print(del_date2 )
print(list7)

在这里插入图片描述

  • remove删除首个符合条件的元素,注意不是使用索引删除元素,如果指定要删除的元素不存在于列表中则抛异常:
list8 = [1,2,2,3,4,5,6]
list8.remove(2)
print("list8:",list8)
list8.remove(7)
print("list8:",list8)

在这里插入图片描述

二、 列表的其他操作

2.1、列表的运算

表达式 结果 说明
[1, 2, 3] +[4, 5, 6] [1, 2, 3, 4, 5, 6] 将两个列表相加
[1] * 4 [1,1,1,1] 将列表中的元素重复n遍

2.2、列表的截取:
list1 = [1, 2, 3, 4, 5, 6, 7]

表达式 结果 说明
list1[-2] 6 获取倒数第2个元素
list1[1:3] [2, 3] 获取索引为1到3(左闭右开,不包含索引为3)的元素
list1[1:6:2] [2, 4, 6] 获取索引为1到6(不包含索引为6)的元素,每隔两步取一个
list1[:2:-2] [7, 5] 从后面开始取,步长为2

2.3、列表的其他函数和方法:

函数 描述 实例
len(list) 返回列表元素个数 list = [1,2,3,4,5]
len(list)
输出结果:5
list(seq) 将元组转换为列表 tuple = (1, 2, 3,4)
list1 = list(tuple)
print (type(list1))
输出结果:<class ‘list’>
min(list) 返回列表元素最小值 list = [1,2,3,4,5]
min(list)
输出结果:1
max(list) 返回列表元素最大值 list = [1,2,3,4,5]
max(list)
输出结果:5
list.count(obj) 统计某个元素在列表中出现的次数 list = [1,2,1,4,6,1,4,1]
print(list.count(1))
输出结果:4
list.sort([func]) 对原列表进行排序,如果指定参数,
则使用比较函数指定的比较函数参数:
func – 可选参数, 如果指定了
该参数会使用该参数的方法进行排序。
list = [1,4,5,3,2
list.sort()
输出结果:[1,2,3,4,5]
list.sort(reverse=True) # 由大到小排序

猜你喜欢

转载自blog.csdn.net/qq_38803950/article/details/83856554
今日推荐