python列表中元素的排序

'''
l.sort() 用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
语法:l.sort(cmp=None, key=None, reverse=False)
参数:
cmp:可选参数, 如果指定了该参数会使用该参数的方法进行排序。
key:主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse:排序规则,reverse = True 降序, reverse = False 升序(默认)。
返回值:该方法没有返回值,但是会对列表的对象进行排序
'''
1.根据ASCII码排序
p = ['123', 'Google', 'Runoob', 'Taobao', 'Facebook']
p.sort()
print(p)  # ['123', 'Facebook', 'Google', 'Runoob', 'Taobao'] 升序排序


2.降序排序
p1 = [-1, 0, -2, -5, 1, 2, 5, 4, 78, 9]
p1.sort(reverse=True)
print(p1)  # [78, 9, 5, 4, 2, 1, 0, -1, -2, -5]


3.根据函数返回值来排序
d = [(2, 2), (3, 4), (4, 1), (1, 3)]

# 定义取第0个元素作为排序条件的函数
def take_fist(x):
    return x[0]

d.sort(key=take_fist)
print(d)  # [(1, 3), (2, 2), (3, 4), (4, 1)]


4.对下面列表排序(包含整数、字符串、特殊字符)
e = [5, 4, 3, 2, 'b', 'c', '*', 'a']

# 排序算法
def take_sort(x):
    if isinstance(x, int):  
        return x
    return ord(x)

e.sort(key=take_sort)
print(e)  # [2, 3, 4, 5, '*', 'a', 'b', 'c']

 

posted @   半步多爱你  阅读(207)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示