Python中如何使用sorted()函数进行排序

        sorted()函数是一个内置函数,它可以对列表、元组、字符串等可迭代类型进行排序,并返回一个新排序后的列表序列。

一、sorted()函数的基本用法

sorted()函数的基本语法如下:

sorted(iterable, key=None, reverse=False)

其中iterable表示要排序的可迭代对象,例如列表、元组、字符串等。key参数可选,用于指定排序时的比较规则。reverse参数可选,默认为False,表示按升序排序;如果设置为True,则表示按降序排序。

示例:

1.对字符串进行排序:

string = "hello world"
sorted_string = sorted(string)
print(sorted_string) # 输出:[' ', 'd', 'e', 'h', 'l', 'l', 'l', 'o', 'o', 'r', 'w']

string = "hello world"
sorted_string = sorted(string)
print(sorted_string) 
# 输出:[' ', 'd', 'e', 'h', 'l', 'l', 'l', 'o', 'o', 'r', 'w']

 2.对列表进行排序:

list_nums = [2, 1, 4, 5, 3]
sorted_list_nums = sorted(list_nums)
print(sorted_list_nums) 
# 输出:[1, 2, 3, 4, 5]

 3.对元组进行排序:

tuple_nums = (2, 1, 4, 5, 3)
sorted_tuple_nums = sorted(tuple_nums)
print(sorted_tuple_nums) 
# 输出:[1, 2, 3, 4, 5]

二、对于参数key的用法

参数key用于指定排序时的规则。它可以是一个函数,也可以是一个Lambda表达式。参数key的作用是对每个元素进行处理,然后根据处理结果进行排序。

示例:

1.对字符串列表按字符串长度进行排序:

names = ['Angela', 'Tom', 'Melodey', 'Chuck']
sorted_names = sorted(names, key=len)
print(sorted_names) 
# 输出:['Tom', 'Chuck', 'Angela', 'Melodey']

2.对字典列表按字典键值进行排序:

students = [{'name': 'Angela', 'age': 20}, {'name': 'Melodey', 'age': 18}, {'name': 'Chuck', 'age': 22}]
sorted_students = sorted(students, key=lambda x: x['age'])
print(sorted_students)
# 输出:[{'name': 'Melodey', 'age': 18}, {'name': 'Angela', 'age': 20}, {'name': 'Chuck', 'age': 22}]

三、对于参数reverse的用法

参数reverse用于指定排序顺序。默认为False,表示按升序排序;若设置为True,则表示按降序排序。

list_nums = [2, 1, 4, 5, 3]
sorted_list_nums = sorted(list_nums, reverse=True)
print(sorted_list_nums)
# 输出:[5, 4, 3, 2, 1]

        总结:通过sorted()函数,我们可以方便地对字符串、列表、元组等序列进行排序。key参数用于指定排序规则,reverse参数用于指定排序顺序。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值