`
wwt_cxy001
  • 浏览: 9657 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

大话 Python:python 基础巩固 -- 内置排序函数 sort 与 sorted

阅读更多

在 python 语言的内置对象中存在两个比较常用的排序函数:sort、sorted,另外常用的科学计算库 numpy 中的 也提供了很多的排序支持。本小节主要说明内置排序方法 sort、sorted 的使用场景,后续篇幅中会针对 numpy 的使用进行说明。

1、sort() 函数的简单使用

特点:sort() 函数只有在 list 列表的对象中才可以使用,直接该表列表本身的顺序不会生成新的列表对象,字符串按照 ASCII 码进行排序、中文按照 unicode 编码进行从小到大的排序。

  • 默认不使用可选参数进行排序

 

1if __name__ == '__main__':
2   # 定义列表
3   list_ = list([5,2,3,4,6,1])
4   # 执行排序
5   list_.sort()
6   # 结果
7   print list_

 

  • 使用可选参数 reverse 进行排序,从大到小排序

 

1if __name__ == '__main__':
2    # 定义列表
3    list_ = list([523461])
4    # 执行排序
5    list_.sort(reverse=True)
6    # 结果
7    print list_

 

  • 使用可选参数 cmp 进行排序,cmp 函数主要是用于比较,通过比较大小的方式来进行排序

 

1if __name__ == '__main__':
2    # 定义列表
3    list_ = [('e',2),('a',1),('c',3),('d',4)]
4    # 执行排序
5    list_.sort(cmp=lambda m,n:cmp(m[1],n[1]))
6    # 结果
7    print list_

 

lambda 表达式说明:lambda m,n:cmp(m[1],n[1]) 表示元素对象的第1个位置也就是 2,1,3,4 之间进行比较后返回升序的新迭代对象。

 

2、sorted() 函数参数的妙用

特点:sorted(iterable,cmp,key,reverse)函数可以对可迭代的序列进行排序,并且返回一个新的对象、不对原有的列表对象进行修改。

  • 默认不使用可选参数进行排序

 

1if __name__ == '__main__':
2   # 定义列表
3   list_ = ['d','f','a','c','b','e']
4   # 执行排序
5   list_2 = sorted(list_)
6   # 结果
7   print list_2

 

  • 使用可选参数 key 进行排序,指定可迭代对象中的一个元素来进行排序

 

1if __name__ == '__main__':
2   # 定义列表
3   list_ = [('e',2),('a',1),('c',3),('d',4)]
4   # 执行排序
5   list_2 = sorted(list_,key=lambda n:n[1])
6   # 结果
7   print list_2

 

lambda 表达式说明:lambda n:n[1],n 代表每个元素,比如:(‘e’,2) 就是其中一个元素,n[1] 代表每个元素上的第一个位置,在 ('e',2) 中第一个位置正好是 2。由此可见,此迭代对象中是以 2,1,3,4 的升序为标准进行排序的。

  • 使用可选参数 cmp 进行排序,cmp 函数主要是用于比较,通过比较大小的方式来进行排序

 

1if __name__ == '__main__':
2   # 定义列表
3   list_ = [('e',2),('a',1),('c',3),('d',4)]
4   # 执行排序
5   list_2 = sorted(list_,cmp=lambda m,n:cmp(m[0],n[0]))
6   # 结果
7   print list_2

 

lambda 表达式说明:lambda m,n:cmp(m[0],n[0]) 表示元素对象的第0个位置也就是 e,a,c,d 之间进行比较后返回升序的新迭代对象。

 

  • 使用可选参数 reverse 进行排序,从大到小排序

 

1if __name__ == '__main__':
2   # 定义列表
3   list_ = ['d','f','a','c','b','e']
4   # 执行排序
5   list_2 = sorted(list_,reverse=True)
6   # 结果
7   print list_2

 

 

更多精彩前往微信公众号【Python 集中营】,专注后端编程实战,原创文章每天更新!

在这里插入图片描述

分享到:
评论

相关推荐

    python-3.7.7-docs-pdf-a4.zip

    在Python中,有多种方式可以对数据进行排序,如内置的`sorted()`函数、列表的`sort()`方法,以及`heapq`模块等。这一部分将详细解释这些方法的工作原理,如何使用它们对不同类型的数据(包括自定义对象)进行排序,...

    python爬虫数据可视化-12-排序.ev4.rar

    在Python中,我们可以使用内置的sort()或sorted()函数对列表进行排序,也可以使用pandas DataFrame的sort_values()方法。根据需求,可以选择升序或降序排列,甚至可以基于多个列进行排序。在数据可视化项目中,合理...

    Python官方文档内置函数--整理

    这篇"Python官方文档内置函数--整理"的资料显然是为了帮助开发者更好地理解和掌握Python中的内置函数。 Python的内置函数是Python解释器在启动时就加载的一组函数,无需额外导入模块,可以直接在代码中使用。这些...

    python内置函数大全

    ### Python内置函数详解 Python作为一门强大的编程语言,在其标准库中提供了丰富的内置函数,以支持各种编程需求。本文将详细介绍部分重要的内置函数,并按功能类别进行归类,旨在帮助初学者快速掌握这些函数的基本...

    Python-Python排序容器类型SortedListSortedDict和SortedSet

    SortedDict是Python的一个有序字典类型,类似于内置的dict,但其键按照插入顺序或指定的比较函数排序。在普通的字典中,键的顺序是不可预测的,但在SortedDict中,你可以根据需要访问键的顺序。 SortedDict的关键...

    python-leetcode-109-Convert-Sorted-List-to-Binary-Search-Tree

    python python_leetcode_109_Convert_Sorted_List_to_Binary_Search_Tree

    Python库资源大全

    - sortedcontainers:快速的纯Python排序容器,如SortedList、SortedDict和SortedSet。 2. **构建工具**: - BitBake:面向嵌入式Linux的构建工具,类似make。 - buildout:用于创建、组装和部署应用程序的构建...

    Python编程零基础入门

    4-5函数式编程:map_reduce_filter_sorted_偏函数 5-1列表生成式 5-2迭代器 5-3生成器 5-4装饰器 5-5Python编程规范 6-1模块名称空间和导入 6-2模块的执行 6-3os和sys模块介绍和使用 6-4第三方模块的安装 7-1类与...

    python2.6库函数参考手册

    **内置函数**是Python语言的核心组成部分之一,它们构成了语言的基础框架。Python2.6提供了大量的内置函数,用于执行各种基本操作,如数值计算、字符串处理等。 - **abs()**: 返回一个数的绝对值。 - **all()**: ...

    小甲鱼《零基础入门学习Python》课堂笔记

    - 列表排序的方法(sort、sorted)及其参数设置。 - 复杂列表操作示例。 - **实践内容**: - 编写程序,实现列表的排序与反转等功能。 #### 13讲:元组,戴上了枷锁的列表 - **知识点介绍**: - 元组的概念及其...

    python小程序 模拟python sorted()函数

    模拟python sorted()函数

    python基础教程:5个带key的python内置函数.pdf

    在Python的基础教程中,有几个内置函数特别常用,特别是与键(key)相关的函数。以下是对标题中提到的5个带key的Python内置函数的详细解释: 1. `max` 函数:此函数用于找到传入序列中的最大值。在基础示例中,`max...

    轻松学习 Python 69个内置函数.zip

    内置函数是Python标准库的一部分,它们预装在每个Python环境中,为程序员提供了许多便捷的工具。"轻松学习 Python 69个内置函数"的资源旨在帮助初学者和有经验的开发者更好地掌握这些功能,提升编程效率。 1. **...

    基于python的排序算法-冒泡排序Bubble Sort

    Python标准库中的`sorted()`函数和列表的`sort()`方法都使用了Timsort,这是一种混合排序算法,结合了插入排序和归并排序的优点,具有稳定的性能和较好的最坏情况时间复杂度。 在实际开发中,我们通常不直接使用...

    Python3实现对列表按元组指定列进行排序的方法分析

    Python中有2个排序函数,一个是list内置的sort()方法,另一个是全局的sorted()方法 sorted(iterable,key=None,reverse=False) #返回排好序的新列表,不改变对象本身,默认升序;reverse:-True降序 -False 正序对所有可...

    Python sorted 函数:Key参数,以及lambda 函数与常规写法区别

    在Python中,`sorted()` 是一个非常有用的内置函数,它可以帮助我们对列表、元组或其他可迭代对象中的元素进行排序。`sorted()` 函数不仅可以按升序或降序对元素进行排序,还可以通过指定自定义排序规则来实现更为...

    python的重点和难点是什么-Python基础入门的难点重点详细教程,强烈建议收藏.pdf

    - `sorted()`:这是一个内置函数,返回一个新的已排序的列表。可以通过`reverse=True`参数进行降序排序。 6. **其他小知识**: - 幂运算:Python中,`**`运算符用于求幂,如`2 ** 3`等于8。 - `print()`函数的`...

Global site tag (gtag.js) - Google Analytics