python - 面试题 - 列表中取出前四位

列表排序:

思路:
排序 - 切片取数据

1、内建方法 sort()

list.sort(func=None, key=None, reverse=False(or True))

(1)、reverse默认是False,正向排序(从小到大),当reverse=True时,逆向排序(从大到小)
(2)、执行完后会改变原来的list


list = [9, 7, 67, 99, 2, 80, 76, 1, 3]
list.sort()
print(list)  # [1, 2, 3, 7, 9, 67, 76, 80, 99] 默认顺序从小到大

list.sort(reverse=True)  # 当reverse=True时,逆向排序(从大到小)
print(list)  # [99, 80, 76, 67, 9, 7, 3, 2, 1]

2、内建函数sorted()

sorted(list)
(1)、执行后生成一个新的list
(2)、reverse默认是False,正向排序(从小到大),当reverse=True时,逆向排序(从大到小)


sort 和 sorted 的区别:
1、sorted()不会改变原来的list,而是会返回一个新的已经排序好的list
2、ist.sort()方法仅仅被list所定义,sorted()可用于任何一个可迭代对象

list = [9, 7, 67, 99, 2, 80, 76, 1, 3]

new_list = sorted(list)  # 返回一个新的已经排序好的list,从小到大
print(new_list)  # [1, 2, 3, 7, 9, 67, 76, 80, 99]

# 从大到小排序
list = [9, 7, 67, 99, 2, 80, 76, 1, 3]

new_list = sorted(list, reverse=True)  # reverse=True,从大到小排序
print(new_list)  # [99, 80, 76, 67, 9, 7, 3, 2, 1]


使用列表切割方法取出最大的四个数

方法一、
list = [9, 7, 67, 99, 2, 80, 76, 1, 3]

new_list = sorted(list, reverse=True)  # reverse=True,从大到小排序
print(new_list[:4])  # [99, 80, 76, 67]

方法二、
list = [9, 7, 67, 99, 2, 80, 76, 1, 3]

new_list = sorted(list)  # 从小到大排序
print(new_list[-4:])  # [67, 76, 80, 99]

posted @   西瓜_皮  阅读(830)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示