python 列表操作及排序算法详解
本文深入探讨 Python 列表的常用操作,包括元素添加、排序、查找等,并详细讲解冒泡排序算法及其应用。 内容涵盖面试中常见的列表操作问题,例如查找第二大/小值等。
列表元素添加:append()、extend()、insert()
insert():在指定位置插入元素。append():在列表末尾添加单个元素。 即使添加的是列表,也会被视为单个元素。extend():将多个元素(来自另一个列表或可迭代对象)添加到列表末尾。示例:
<code class="python">l1 = [10, 20, 30]
l1.append('abcd') # 添加单个元素
print(l1) # 输出: [10, 20, 30, 'abcd']
l1.extend('pqrs') # 添加多个字符
print(l1) # 输出: [10, 20, 30, 'abcd', 'p', 'q', 'r', 's']</code>列表排序:sort() 与 sorted()
立即学习“Python免费学习笔记(深入)”;
sort():就地修改原列表,不返回任何值。sorted():创建并返回一个新的已排序列表,原列表保持不变。示例:
<code class="python">l1 = [10, 30, 20] l1.sort() print(l1) # 输出: [10, 20, 30] l2 = sorted(l1) print(l2) # 输出: [10, 20, 30] print(l1) # 输出: [10, 20, 30] (原列表已改变)</code>
查找列表中的最小值、最大值和总和:min()、max()、sum()
<code class="python">l1 = [10, 20, 30, 40, 50] print(min(l1)) # 输出: 10 print(max(l1)) # 输出: 50 print(sum(l1)) # 输出: 150</code>
查找第二小值和第二大值
利用 float('inf') (正无穷) 和 -float('inf') (负无穷) 简化代码:
一个经过完善设计有着及其强大的会员互动和独特创新的内容管理系统。主要功能模块包括:文章频道、图片频道、下载频道、动漫频道、音乐频道、影视频道、商城频道、供求频道、采集管理 、专题频道等等。系统通用模块:用户管理、博客日志管理、相册管理、音乐盒管理、朋友圈管理、广告管理、公告管理、模板管理、网站信息配置、高级自定义SQL扩展标签,RSS在线订阅功能、网站统计、邮件列表、邮件群发、数据库管理、站内短消
0
<code class="python">l1 = [10, 20, 310, 40, 50]
min_value = float('inf')
second_min = float('inf')
for x in l1:
if x < min_value:
second_min = min_value
min_value = x
elif x < second_min and x != min_value:
second_min = x
print(second_min) # 输出: 20
max_value = -float('inf')
second_max = -float('inf')
for x in l1:
if x > max_value:
second_max = max_value
max_value = x
elif x > second_max and x != max_value:
second_max = x
print(second_max) # 输出: 50</code>冒泡排序
冒泡排序是一种简单的排序算法,通过不断比较相邻元素并交换来实现排序。

示例:
<code class="python">l1 = [40, 30, 20, 10]
n = len(l1)
for i in range(n):
for j in range(0, n-i-1):
if l1[j] > l1[j+1]:
l1[j], l1[j+1] = l1[j+1], l1[j]
print(l1) # 输出: [10, 20, 30, 40]</code>成员运算符:in 和 not in
in 和 not in 用于检查元素是否在列表中。
<code class="python">l1 = [100, 67, 54, 101, 220, 670, 45, 32] print(100 in l1) # 输出: True print(120 not in l1) # 输出: True</code>
字符串反转
<code class="python">s = "today is thursday" reversed_s = s[::-1] #利用切片反转 print(reversed_s) # 输出: yadsruht si yadot</code>
希望以上内容能够帮助您更好地理解 Python 列表操作和排序算法。 如有任何疑问,请随时提出。
以上就是Python 日期列表函数的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号