10个实用并很有意思的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小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~