0

0

排序(Sorted()):我在Python中最喜欢的函数

WBOY

WBOY

发布时间:2023-09-05 20:21:03

|

2490人浏览过

|

来源于tutorialspoint

转载

排序(sorted()):我在python中最喜欢的函数

简介

在 Python 中,sorted() 函数是开始排序时需要了解的最基本但有用的方法之一。此函数可用于对可迭代对象的元素进行排序,例如列表、字符串等。此函数对字符串和数字进行排序。默认情况下,它按升序排序,但也可以按降序排序。

Sorted()函数的使用方法

  • 使用Sorted()函数对数字进行排序

  • 对列表、元组、集合和字典进行排序

  • 对字符串进行排序

    立即学习Python免费学习笔记(深入)”;

  • 在 lambda 函数内排序

方法1:使用Sorted()函数对数字进行排序

sorted() 函数最基本的实现是对整数集合(有符号或无符号)进行排序。这可以按升序或降序进行。

语法

print(sorted([n1, n2, n3, n4]))

语法非常简单。我们只需将要排序的数字作为排序函数的参数,它就会按排序顺序返回数字。要按降序排序,我们需要在数字列表后面添加“反向”一词。这里需要注意的一件事是,数字必须放置在可迭代容器中才能使该方法发挥作用。

算法

第1步 - 调用sorted()函数

第二步 - 将数字列表作为参数传递,并在需要时使用“reverse”关键字

第三步 - 返回或打印输出

Example

的中文翻译为:

示例

print(sorted([4, 1, 3, 2]))

输出

[1, 2, 3, 4] 

方法二:对列表、元组、集合和字典进行排序

序列的内容(如列表、元组、字符串)和集合(如集合、冻结集和数据集)的内容可以使用sorted()方法进行排序。该函数是Python内置库的一部分,因此无需编写大量代码即可轻松对内容进行排序。

语法

define x=container/set
return(sorted(x))

这种简单的语法是我最喜欢sorted()函数的原因之一,并且非常容易应用。为了对任何类型的迭代器的内容进行排序,我们首先声明迭代器,如列表、集合等。然后将此迭代器传递给函数,函数然后返回排序后的内容。

算法

步骤 1 - 使用要排序的元素初始化迭代器

Magician
Magician

Figma插件,AI生成图标、图片和UX文案

下载

第2步 - 将迭代器作为参数传递给sorted()方法,以及键和升序或降序确认

第 3 步 - 打印或返回值

Example

的中文翻译为:

示例

# List
x = ['z', 'g', 'e', 'o', 't', 'y']
print(sorted(x))

# Tuple
x = ('z', 'g', 'e', 'o', 'd', 'k')
print(sorted(x))

# Dictionary
x = {'z': 1, 'p': 2, 'e': 12, 'h': 8, 'k': 7, 'y': 3}
print(sorted(x))

# Set
x = {'x', 'w', 'h', 'd', 'k', 'b'}
print(sorted(x))

# Frozen Set
x = frozenset(("v", "m", "d", "u", "s", "c"))
print(sorted(x))

输出

['e', 'g', 'o', 't', 'y', 'z']
['d', 'e', 'g', 'k', 'o', 'z']
['e', 'h', 'k', 'p', 'y', 'z']
['b', 'd', 'h', 'k', 'w', 'x']
['c', 'd', 'm', 's', 'u', 'v'] 

方法三:字符串排序

sorted() 函数的可用性不仅限于数字,还可以用于字符串。字符串可以使用 ASCII 值按字典顺​​序排序,并且可以按升序和降序排序。这样,我们还可以在排序后对字符串进行反转或者执行其他应用。

语法

res = ''.join(sorted(test_string, reverse = True))

这是反转字符串的语法,我们使用了join函数和sorted()方法,同时将reverse标志设置为True。这确保了字符串被反转,并按降序排序。

算法

第 1 步− 初始化字符串以进行反转

第2步 - 调用join()和sorted()方法

第3步 - 将字符串和反向标志传递给sorted()函数

Example

的中文翻译为:

示例

test_string = "tutorialspoint"
print("The original string : " + str(test_string))
res = ''.join(sorted(test_string, reverse = True))
print("String after reverse sorting : " + str(res))

输出

The original string : tutorialspoint
String after reverse sorting : utttsrpoonliia 

方法4:在lambda函数内部进行排序

Lambda函数是Python中的一类匿名函数。它们使用lambda关键字声明,并且只能包含一个表达式,但可以包含无限数量的参数。

语法

res = functools.reduce(lambda x, y: x + y,
 sorted(test_string, reverse=True))

通过上面的语法可以观察到对测试字符串进行排序并反转的结果,其中我们使用了reduce()函数。排序函数用于执行实际排序,而 lambda 函数接受两个输入并返回其总和作为函数输出。

算法

第 1 步 - 导入 functools 模块

第 2 步 - 定义测试字符串

第3步 - 根据语法将测试字符串传递给reduce()函数

第四步 - 打印反转后的字符串

Example

的中文翻译为:

示例

# import the module
import functools
test_string = "tutorialspoint"
print("The original string : " + str(test_string))
res = functools.reduce(lambda x, y: x + y,  sorted(test_string,  reverse=True))
print("String after reverse sorting : " + str(res))

输出

The original string : tutorialspoint
String after reverse sorting : utttsrpoonliia 

结论

在本文中,我们了解了sorted()函数的各种用法。该功能的多样化和简单的应用使其非常适合在许多过程中进行初步使用。该函数可能还有其他几个用例,尽管这里无法讨论所有这些用例。我希望这篇文章对学习 Python 中一个非常有用的函数有所帮助!

相关文章

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

37

2026.01.14

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

19

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

37

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

19

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

16

2026.01.13

PHP缓存策略教程大全
PHP缓存策略教程大全

本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

jQuery 正则表达式相关教程
jQuery 正则表达式相关教程

本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

3

2026.01.13

交互式图表和动态图表教程汇总
交互式图表和动态图表教程汇总

本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

45

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

9

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
燕十八ThinkPHP视频教程
燕十八ThinkPHP视频教程

共27课时 | 7.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号