Python使用sorted排序的方法小结

作者:罗兵 时间:2022-09-03 21:11:23 

本文实例讲述了Python使用sorted排序的方法。分享给大家供大家参考,具体如下:


# 例1. 按照元素出现的次数来排序
seq = [2,4,3,1,2,2,3]
# 按次数排序
seq2 = sorted(seq, key=lambda x:seq.count(x))
print(seq2) # [4, 1, 3, 3, 2, 2, 2]
# 改进:第一优先按次数,第二优先按值
seq3 = sorted(seq, key=lambda x:(seq.count(x), x))
print(seq3) # [1, 4, 3, 3, 2, 2, 2]
'''
原理:
 先比较元组的第一个值,值小的在前。(注意:False < True)
 如果相等就比较元组的下一个值,以此类推。
'''

运行结果:

Python使用sorted排序的方法小结


#例2.这是一个字符串排序,排序规则:小写<大写<奇数<偶数
s = 'asdf234GDSdsf23'
s2 = "".join(sorted(s, key=lambda x: (x.isdigit(),x.isdigit() and int(x) % 2 == 0,x.isupper(),x)))
print(s2) # addffssDGS33224

运行结果:

Python使用sorted排序的方法小结


#例3. 一道面试题:
list1 = [7, -8, 5, 4, 0, -2, -5]
#要求1.正数在前负数在后 2.正数从小到大 3.负数从大到小
list2 = sorted(list1,key=lambda x:(x<0, abs(x)))
print(list2) # [0,4,5,7,-2,-5,-8]

运行结果:

Python使用sorted排序的方法小结

希望本文所述对大家Python程序设计有所帮助。

标签:Python,sorted,排序
0
投稿

猜你喜欢

  • Python的运算符重载详解

    2022-08-19 21:51:52
  • mysql乱码问题分析与解决方法

    2024-01-14 21:05:51
  • WINDOWS 同时安装 python2 python3 后 pip 错误的解决方法

    2023-07-01 11:01:00
  • javascript实现计算器功能详解流程

    2024-04-23 09:27:00
  • 一小时快速入门Python教程

    2023-03-06 04:07:03
  • Python timeit模块原理及使用方法

    2023-09-22 08:19:18
  • Laravel框架执行原生SQL语句及使用paginate分页的方法

    2023-11-24 00:27:24
  • python利用高阶函数实现剪枝函数

    2022-04-17 11:21:44
  • Python+Tkinter制作专属图形化界面

    2022-10-26 23:31:19
  • django模板语法学习之include示例详解

    2023-10-03 18:52:54
  • Django配置跨域并开发测试接口

    2022-03-20 21:29:08
  • 如何解决mysql重装失败方法介绍

    2024-01-19 10:52:05
  • Python+selenium实现截图图片并保存截取的图片

    2023-06-03 10:15:59
  • 关于keras中卷积层Conv2D的学习记录

    2022-07-16 17:33:16
  • python使用opencv resize图像不进行插值的操作

    2023-09-12 15:04:25
  • 详解python中的生成器、迭代器、闭包、装饰器

    2023-06-25 19:39:57
  • selenium+python截图不成功的解决方法

    2021-06-02 23:25:06
  • Pytest框架之fixture详解(三)

    2023-06-20 12:05:27
  • Python机器学习NLP自然语言处理基本操作家暴归类

    2023-03-18 22:44:14
  • 利用PyCharm操作Github(仓库新建、更新,代码回滚)

    2022-09-13 05:01:34
  • asp之家 网络编程 m.aspxhome.com