
Python--列表
示例: del语句可以删除单个值
示例: remove()可以根据值删除元素
示例: clear()方法用于清空列表
示例: copy()函数复制列表
示例:len()函数
示例:in 关键字
发布日期:2021-05-06 00:58:35
浏览次数:63
分类:精选文章
本文共 4043 字,大约阅读时间需要 13 分钟。
1. 列表
列表概述: Python中的列表是由一系列按特定顺序排列的元素组成的。它是Python中内置的可变序列。在形式上,列表的所有元素都放在一对中括号“[]”中,两个相邻元素间使用逗号“,”分隔。在内容上,可以将整数、实数、字符串、列表、元组等任何类型的内容放入到列表中
1.1 列表的创建与删除
my_list = [11, 12, 13]my_tuple = (21, 22, 23)for list in list(zip(my_list, my_tuple)): print(list)
运行结果:

1.2 列表元素的访问与遍历
1.2.1 示例: 使用for循环
lists = [1, 2, 3, 4, 5]for list in lists: print(list)
运行结果:

1.2.2 示例: 使用for循环和enumerate()函数
# 使用for循环和enumerate()函数lists = [1, 2, 3, 4, 5]for index, value in enumerate(lists): print(f'{index}: {value}')
运行结果:

1.2.3 示例: 使用while循环
# 使用while循环lists = [1, 2, 3, 4]i = 0while i < len(lists): print(lists[i]) i += 1
运行结果:

1.2.4 示例: 使用索引进行遍历
modern = ['高铁', '扫码支付', '共享单车', '网购']for index in range(len(modern)): print(modern[index])
运行结果:

1.2.4 示例: 利用iter()生成迭代器遍历。iter()的语法为
iter(object[,sentinel])参数说明:object:支持迭代的集合对象。sentinel:如果传递了第二个参数,则参数object必须是一个可调用对象(如函数)此时,iter创建了一个迭代器对象,每次调用这个迭代器对象的__next__()方法都会调用object。
modern = ['高铁', '扫码支付', '共享单车', '网购']for val in iter(modern): print(val)
运行结果:

1.3 列表元素的常用操作
1.3.1 添加元素的方法
示例:
lists = [1, 2, 3]# append() 方法在末尾添加一个对象lists.append(4)# extend() 可以一次追加多个值lists.extend([5, 6])# insert() 函数可以在指定位置插入值lists.insert(6, 7)print(lists)
运行结果:
1.3.2 删除元素的方法
示例: del语句可以直接删除整个列表
lists = [1, 2, 3,4,5]# del 可以直接删除整个列表del listsprint(lists)
运行结果:

lists = [1, 2, 3, 4, 5]# del 可以删除单个值del lists[0]print(lists)
运行结果:

示例: del语句可以删除最后一个值
modern = ['高铁', '扫码支付', '共享单车', '网购']del (modern[-1])print(modern)
运行结果:

示例: 使用pop()函数删除值
lists = [1, 2, 3, 4, 5]# pop() 默认会删除列表最后一个值 并且返回该元素print(lists.pop())print(lists)print("------------------")# pop() 也可以删除指定的元素 并且返回该元素print(lists.pop(0))print(lists)
运行结果:

lists = [1, 2, 3, 4, 5]# remove() 可以根据值删除元素lists.remove(3)print(lists)
运行结果:

lists = [1, 2, 3, 4, 5]# clear() 方法用于清空列表lists.clear()print(lists)
lists = [1, 2, 3, 4, 5]# del lists[:] 也可以清空列表del lists[:]print(lists)
运行结果:

1.3.3 修改元素的方法
lists = [1, 2, 3, 4, 5]# reverse()函数可以反转列表lists.reverse()print(lists)
运行结果:

lists = [1, 2, 3, 4, 5]# copy()函数复制列表lists_cpoy = lists.copy()print(lists_cpoy)
运行结果:

1.3.4 查找元素方法
index()的语法用于从列表中找出某个值第一个匹配项的索引位置,即获取指定元素首次出现的下标。index()方法的语法为:list.index(x,[,start,end])x:查找的对象star:可选,查找的起始位置end:end可选,查找的结束位置返回值:该方法返回查找对象的索引位置,如果没有找到对象则抛出异常。
modern = ['高铁', '扫码支付', '共享单车', '网购']print(modern.index('扫码支付'))
运行结果:

示例:count()函数
modern = ['高铁', '扫码支付', '共享单车', '网购', '高铁']print(modern.count('高铁'))
运行结果:

modern = ['高铁', '扫码支付', '共享单车', '网购', '高铁']print(len(modern))
运行结果:

modern = ['高铁', '扫码支付', '共享单车', '网购', '高铁']print('高铁' in modern)
运行结果:

1.4 列表元素的统计与排序
- 列表元素的统计
列表元素的统计: 在Python中,提供了sum()函数用于统计数值列表中各元素的和。
lists = [1, 2, 3, 4]print(sum(lists))
运行结果:

- 列表元素的排序
列表元素的排序: Python中提供了两种常用的对列表进行排序的法。使用列表对象的sort()方法实现、使用内置的sorted()函数实现。
1.4.1 sort()
列表对象提供了sort()方法对原列表中的元素进行排序。排序后原列表中的元素顺序发生改变,sort()方法的语法格式为:listname.sort(key=None,reverse=False)参数说明:listname:要排序的列表名。key:表示从每个列表元素中提取一个比较键(例如,设置key=str.lower)表示排序时不区分大小写)reverse:可选参数,默认为升序排序(False),可以指定为True(降序排序)。
lists = ['c', 'B', 'a']print("原列表: ", lists)lists.sort(key=str.lower)print("列表默认升序: ", lists)
运行结果:

注意点:
- 使用sort()方法进行排序时,采用的规则是先对大写字母进行排序,然后再对小写字母进行排序。
- 如果相对字符串进行排序,应该设置key为不区分大小写
- sort()对中文排序不支持。
1.4.1 sorted()
语法格式为:sorted(listname,key=None,reverse=False)该方法于sort()函数不同的是,该方法不会改变原列表,只会生成一个临时的副本。
示例:
lists = ['c', 'B', 'a']lists = sorted(lists, key=str.lower)print(lists)
运行结果:

1.5 列表的嵌套
嵌套列表就是列表中包含列表。嵌套列表可以模拟出现实中的表格、矩阵、2D游戏的地图、棋盘等。
示例: 通过对列表的嵌套应用,实现3×4矩阵的转置行和列。
matrix = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]transposed = []for i in range(4): midden = [] for row in matrix: midden.append(row[i]) transposed.append(midden)print(transposed)
运行结果:

1.6 综合示例:
# 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?height = 100height_sum = []for item in range(10): height_sum.append(height) height /= 2print(height_sum)print('它在第10次落地时,共经过' + str(sum(height_sum)) + "米")print('第10次反弹: ' + str(height) + '米')
发表评论
最新留言
很好
[***.229.124.182]2025年04月05日 23时02分34秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
《小王子》里一些后知后觉的道理
2021-05-09
《你当像鸟飞往你的山》总结
2021-05-09
《我是猫》总结
2021-05-09
《抗糖化书》总结
2021-05-09
apache虚拟主机配置
2021-05-09
PHP官方网站及PHP手册
2021-05-09
mcrypt加密以及解密过程
2021-05-09
go等待N个线程完成操作总结
2021-05-09
ReactJs入门教程-精华版
2021-05-09
Python 之网络式编程
2021-05-09
MySql5.5安装步骤及MySql_Front视图配置
2021-05-09
Java内存模型(JMM)
2021-05-09
AQS相关
2021-05-09
WCF学习之旅—第三个示例之一(二十七)
2021-05-09
java ThreadPoolExecutor初探
2021-05-09
快速指数算法
2021-05-09
python去除字符串中的特殊字符(爬虫存储数据时会遇到不能作为文件名的字符串)
2021-05-09
SpringCloud微服务(03):Hystrix组件,实现服务熔断
2021-05-09