Python 列表数据类型(list)[学习 Python 必备基础知识][看此一篇就够了](python是什么意思)

网友投稿 325 2022-08-20

Python 列表数据类型(list)[学习 Python 必备基础知识][看此一篇就够了](python是什么意思)

您的“关注”和“点赞”,是信任,是认可,是支持,是动力......

如意见相佐,可留言。

本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新。

目录

1 Python 列表数据类型概述

2 Python 创建列表

2.1 使用 [] 直接创建列表

2.2 使用 list() 函数创建列表

3 访问列表元素

3.1 使用索引访问列表元素

3.2 使用切片访问列表元素

4 Python删除列表

5 列表基本操作(增删改查)

5.1 增(添加列表元素)

5.1.1 Python append() 方法添加元素

5.1.2 Python extend() 方法添加元素

5.1.3 Python insert() 方法插入元素

5.1.4 其他方法(使用 + 加法运算符)

5.2 删(删除列表元素)

5.2.1 根据目标元素所在位置的索引进行删除

5.2.2 根据元素本身的值进行删除

5.2.3 删除列表中的所有元素

5.3 改(修改列表元素)

5.3.1 修改单个元素

5.3.2 修改一组元素

5.4 查(查找列表元素)

5.4.1 使用列表提供的index() 方法查找元素

5.4.2 使用列表提供的count()方法查找元素

6 列表排序

6.1 使用列表提供的 sort() 方法排序

6.2 使用 sorted() 内置函数排序

7 文章其他地址

7.2 CSDN 博客

8 参考资料

8.1 Python 3.8.2 documentation

1 Python 列表数据类型概述

列表是可变序列,通常用于存放同类项目的集合(其中精确的相似程度将根据应用而变化)。

列表数据类型,在 Python 中用list表示,可以用type()函数查看。如下所示:

list_demo = ["python.org", '码农阿杰', 100.1, [1, 2, 3, 4]] # 创建列表,并赋值给变量 list_demo

print(type(list_demo))

运行结果:

列表将所有元素都放在一对中括号[ ]里面,相邻元素之间用逗号,分隔,element1 ~ elementn 表示列表中的元素,个数没有限制,只要是 Python 支持的数据类型就可以。

列表可以存储整数、小数(浮点数)、布尔值、复数、字符串、列表、元组等任何类型的数据,并且同一个列表中元素的类型也可以不同。

注意事项:为了提高程序的可读性,不建议将不同类型的数据放入到同一个列表中。

如下所示:

[element1, element2, element3, ..., elementn]

["python.org", '码农阿杰', 100.1, [1, 2, 3, 4]]

2 Python 创建列表

2.1 使用 [] 直接创建列表

格式如下:

listname = [element1 , element2 , element3 , ... , elementn] # 包含多个元素的列表

emptylist = [] # 一个元素都没有的列表,称为空列表

对以上格式说明:

listname :变量名。创建完列表后,通常会把列表赋值给一个变量,便于调用列表。

element1 ~ elementn: 表示列表的元素。

使用 [] 直接创建列表举例,如下所示:

list_demo2 = ['博客园', 'https://cnblogs.com/manongajie/']

list_demo3 = ['CSDN 博客', 'https://blog.csdn.net/manongajie']

list_demo4 = ['邮箱', 'manongajie@163.com']

list_demo5 = [7, 4, 5, 9, 9, 1, 7, 4, 1] # QQ

list_demo6 = [] # 空列表

2.2 使用 list() 函数创建列表

使用 list() 内置函数创建列表,其实就是将其它数据类型转换为列表类型。举例如下所示:

# 将字符串转换成列表

list_demo1 = list('码农阿杰')

print(list_demo1)

# 将元组转换成列表

tuple_demo1 = ('python', 'java', 'php', 'c')

list_demo2 = list(tuple_demo1)

print(list_demo2)

# 创建空列表

list_demo3 = list()

print(list_demo3)

运行结果:

['码', '农', '阿', '杰']

['python', 'java', 'php', 'c']

[]

3 访问列表元素

3.1 使用索引访问列表元素

格式如下所示:

listname[index]

对以上格式说明,

listname:表示列表名字。

index:表示索引值。Python 支持正索引和负索引。

举例如下所示:

print('list_demo4[0] =', list_demo4[0])

print('list_demo4[1] =', list_demo4[1])

print('list_demo4[2] =', list_demo4[2])

print('list_demo4[-1] =', list_demo4[-1])

print('list_demo4[-2] =', list_demo4[-2])

print('list_demo4[-3] =', list_demo4[-3])

运行结果:

list_demo4[1] = 博客园 https://cnblogs.com/manongajie/

list_demo4[2] = CSDN 博客 https://blog.csdn.net/manongajie

list_demo4[-1] = CSDN 博客 https://blog.csdn.net/manongajie

list_demo4[-2] = 博客园 https://cnblogs.com/manongajie/

3.2 使用切片访问列表元素

格式如下所示:

listname[start: end: step]

对以上格式说明,

lsitname:表示列表名字。

start:表示开始索引。

end:表示结束索引。

step:表示步长。

各个参数的使用比较灵活,详情 举例如下所示:

list_demo5 = [1, 2, 3, 4, 5, 6]

print('list_demo5[::] =', list_demo5[::]) # 三个参数都不写

print('list_demo5[:2:2] =', list_demo5[:2:2]) # 不写 start 参数

print('list_demo5[1::2] =', list_demo5[1::2]) # 不写 end 参数

print('list_demo5[1:2:] =', list_demo5[1:2:]) # 不写 step 参数

print('list_demo5[1:4:2] =', list_demo5[1:4:2])

print('list_demo5[1:4:3] =', list_demo5[1:4:3])

print('list_demo5[1:2] =', list_demo5[1:2]) # 不要 step 参数

# 不要 step 参数

print('list_demo5[:] =', list_demo5[:])

print('list_demo5[1:] =', list_demo5[1:])

print('list_demo5[2:] =', list_demo5[2:])

print('list_demo5[:1] =', list_demo5[:1])

print('list_demo5[:2] =', list_demo5[:2])

print('list_demo5[1:3] =', list_demo5[1:3])

运行结果:

list_demo5[::] = [1, 2, 3, 4, 5, 6]

list_demo5[:2:2] = [1]

list_demo5[1::2] = [2, 4, 6]

list_demo5[1:2:] = [2]

list_demo5[1:4:2] = [2, 4]

list_demo5[1:4:3] = [2]

list_demo5[1:2] = [2]

list_demo5[:] = [1, 2, 3, 4, 5, 6]

list_demo5[1:] = [2, 3, 4, 5, 6]

list_demo5[2:] = [3, 4, 5, 6]

list_demo5[:1] = [1]

list_demo5[:2] = [1, 2]

list_demo5[1:3] = [2, 3]

4 Python删除列表

Python 自带的有垃圾回收机制,对于创建好的列表,如果不再使用,Python 会自动将其回收。

当然,也可以手动进行删除,那就要使用del关键字了。

使用del关键字手动删除的格式如下:

del listname

对以上格式说明,

listname:表示要珊瑚列表的名称。

举例如下所示:

list_demo6 = [1, 2, 3, 4, 5]

print(list_demo6)

del list_demo6 # 使用 del 关键字删除列表 list_demo6

print(list_demo6) # 删除后,再次打印

运行结果:

[1, 2, 3, 4, 5]

Traceback (most recent call last):

File "D:/Data/PycharmProjects/demo/demo.py", line 68, in

print(list_demo6) # 删除后,再次打印

NameError: name 'list_demo6' is not defined

5 列表基本操作(增删改查)

5.1 增(添加列表元素)

5.1.1 Python append() 方法添加元素

格式如下所示:

listname.append(obj)

对以上格式说明,

append(): append()方法会在列表中添加元素,要注意的是:append()添加的元素在列表的末尾。

listname:表示要添加元素的列表。

obj:表示要添加到列表末尾的数据。obj如果是列表或元组,会将列表或元组当做一个整体作为要添加元素列表的一个元素,形成一个包含列表或元组的“新列表”(“新列表”指的是列表内存地址没变,元素更新了)。

举例如下所示:

例一,添加数据为字符串

print('---- 原列表 ----:')

print(list_demo1)

list_demo1.append('码农阿杰') # 用 append() 函数向列表 list_demo1 的末尾添加的数据为字符串

print('---- 添加元素后的列表 ----:')

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

例二,添加数据为列表

print('---- 原列表 ----:')

print(list_demo1)

print('---- 添加元素后的列表 ----:')

list_demo1.append([1, 2, 3]) # 用 append() 函数向列表 list_demo1 的末尾添加的数据为列表

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

例三,添加数据为元组

print('---- 原列表 ----:')

print(list_demo1)

print('---- 添加元素后的列表 ----:')

list_demo1.append((1, 2, 3)) # 用 append() 函数向列表 list_demo1 的末尾添加的数据为元组

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

5.1.2 Python extend() 方法添加元素

格式如下所示:

listname.extend(obj)

对以上格式说明,

extend():extend()会在列表中添加元素,要注意的是extend()添加的元素在列表的末尾。这一点跟append()方法一致。

listname:要添加元素的列表。

obj:obj表示要添加到列表末尾的数据。要注意的是:会与append()方法不同,append()方法会将字符串、列表或元组当做一个整体作为要添加元素列表的一个元素,形成一个包含字符串、列表或元组的“新列表”(“新列表”指的是列表内存地址没变,元素更新了);而extend()方法会将它们包含的元素逐个添加到列表中,不会将它们视为一个整体哦。

举例如下所示:

例一,添加数据为字符串

print('---- 原列表 ----:')

print(list_demo1)

list_demo1.extend('码农阿杰') # 用 extend() 函数向列表 list_demo1 的末尾添加的数据为字符串

print('---- 添加元素后的列表 ----:')

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

例二,添加数据为列表

print('---- 原列表 ----:')

print(list_demo1)

print('---- 添加元素后的列表 ----:')

list_demo1.extend([1, 2, 3]) # 用 extend() 函数向列表 list_demo1 的末尾添加的数据为列表

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

例三,添加数据为元组

print('---- 原列表 ----:')

print(list_demo1)

print('---- 添加元素后的列表 ----:')

list_demo1.extend((1, 2, 3)) # 用 extend() 函数向列表 list_demo1 的末尾添加的数据为元组

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

5.1.3 Python insert() 方法插入元素

格式如下所示:

listname.insert(index , obj)

对以上格式说明,

insert():insert()方法可以在列表中间某个(指定位置)位置插入元素。append()、extend()方法只能在列表末尾插入元素。

listname:表示要插入元素的列表。

index:表示指定位置的索引值。

obj:要插入列表的数据。如果插入的数据是列表或元组,insert() 也会将它们视为一个整体,作为一个元素插入到列表中,在这一点上和 append()方法是一样的。

举例如下所示:

例一,插入数据为字符串

print('---- 原列表 ----:')

print(list_demo1)

print('---- 添加元素后的列表 ----:')

list_demo1.insert(1, '码农阿杰') # 用 insert() 方法向列表 list_demo1 中索引值为 1 的位置添加的数据为字符串

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

例二,插入数据为列表

print('---- 原列表 ----:')

print(list_demo1)

print('---- 添加元素后的列表 ----:')

list_demo1.insert(1, [1, 2, 3]) # 用 insert() 方法向列表 list_demo1 中索引值为 1 的位置添加的数据为列表

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

例三,插入数据为元组

print('---- 原列表 ----:')

print(list_demo1)

print('---- 添加元素后的列表 ----:')

list_demo1.insert(1, (1, 2, 3)) # 用 insert() 方法向列表 list_demo1 中索引值为 1 的位置添加的数据为元组

print(list_demo1)

运行结果:

---- 原列表 ----:

---- 添加元素后的列表 ----:

5.1.4 其他方法(使用 +

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Tushare Pro接口介绍(tushare库详解)
下一篇:LeetCode 98. 验证二叉搜索树 | Python(leetcode题库)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~