当前位置:首页>python>python学习笔记-列表

python学习笔记-列表

  • 2026-10-11 07:53:35
python学习笔记-列表

列表是python中内置的可变序列。

形式上用[]把所有元素放在中括号里,相邻元素用,隔开,内容上同一个列表中,元素的类型可以不同,因为它们之间没有任何关系,元素与元素可以不同类型,,元素可以是整数,实数,字符串,列表,元组等内容,也就是列表中可以包含列表,所以python的列表是非常灵活的。

1.列表的创建和删除

使用赋值运算符直接创建列表;

创建空列表emptylist = []

创建数值列表:

list(data)

list(range[start:end:step])#这里用到切片知识可以参考python学习笔记-序列里的切片语法规则。

删除列表可以使用del listname(要删除的列表名)

2.访问列表元素

使用print(listname)可以输出全部列表内容,如果想获取指定的元素则使用print(listname[索引号]

3.遍历列表

可以直接使用for循环实现,语法格式:

for item in listname:#输出的是item的值

      print(item) #item是用于保存获取到的元素值

例:

print(""*2,"春晓")

penny = ["春眠不觉晓","处处闻啼鸟","夜来风雨声","花落知多少"]

for item in penny:

     print(item)

运行上面代码结果如下:

    春晓

春眠不觉晓

处处闻啼鸟

夜来风雨声

花落知多少

还可以使用for循环和enumerate()函数实现

语法格式:

for index,item in enumerate(listname):

#表示输出index和 item

index是用于保存元素的索引

item保存元素的元素值

例:

print(""*2,"春晓")

penny = ["春眠不觉晓","处处闻啼鸟","夜来风雨声","花落知多少"]

for index,item in enumerate(penny):

      print(index,item)

运行上面代码结果如下:

    春晓

0 春眠不觉晓

1 处处闻啼鸟

2 夜来风雨声

3 花落知多少

添加、修改和删除列表元素

1.添加元素

前面介绍过可以通过加号➕运算符来连接两个列表,但是比较慢,不方便。

可以采取使用列表对象的append(),用于在列表的末尾追加元素,语法格式:

listname.append(obj)#obj为要添加到列表末尾的对象

还可以采用insert()方法用于向列表的指定位置插入元素,但是没有append()执行效率高

如果将一个列表中的全部元素添加到另一个列表中,可以使用列表对象的extend()函数,语法规则:

listname.extend(seq)#listname是原列表,seq是要添加的列表,执行后seq的内容将被追加到listname列表后面

2.修改元素

通过索引获取该元素,然后再为其重新赋值新值即可

3.删除元素

一种是根据索引删除,一种是根据元素值删除。

根据索引删除:del listname[-2]#删除倒数第二个元素

不确定要删除的元素位置时,可以使用列表对象的remove()方法,语法规则:

listname = []

listname.remove("要删除的元素")

如果要删除的元素不在这个列表里,那上述代码还需要改进更严谨一些,就是要先判断这个要删除的元素是否存在,语法规则:

penny = ["春眠不觉晓","处处闻啼鸟","夜来风雨声","花落知多少"]

value = "花落知多少"

if penny.count(value)>0:

      penny.remove(value)

print(penny)

(count()方法用于判断指定元素出现的次数,返回结果为0时,表示不存在这个元素)

对列表统计计算

1.获取指定元素出现的次数

语法格式:listname.count(obj)

这个obj只能是精确匹配的元素而不能是元素的一部分

2.获取指定元素首次出现的下标(即索引值)

listname.index(obj)

3.统计数值列表的元素和

使用sum()函数,语法格式:

sum(iterable[,start])#iterable表示要统计的列表,start表示统计结果是从哪个数开始的,是可选参数,没有指定的话默认为0

对列表进行排序

1.使用列表对象的sort()方法,这个原列表元素顺序发生改变,用于对原列表中的元素进行排序,语法格式:

listname.sort(key=None,reverse=False)

#key表示指定从每个列表元素中提取一个比较键,reverse为可选参数

2.使用内置的sorted()函数,对列表排序后,原列表元素顺序不变,语法格式:

sorted(iterable,key=None,reverse=False)

#iterable是原列表,其余跟上面方法一样的

列表推导式

使用列表推导式可以快速生成一个列表,或者根据某个列表生成满足指定需求的列表,有如下几种常用语法格式:

1.生成指定范围的数值列表,语法格式如下:

list = [Expression for var in range]

#list表示生成的列表名称,Expression表示式,用于计算新列表的元素,var循环变量,range:采用range()函数生成的range对象

2.根据列表生成指定需求的列表,语法格式:

newlist =[Expression for var in list]

3.从列表中选择符合条件的元素组成新的列表,语法格式:

newlist = [Expression for var in list if condition]

二维列表

1.直接定义二维列表

2.使用嵌套的for循环创建

3.使用推导式创建

最新文章

随机文章