sort()和sorted()

本文介绍了Python内置的sort()和sorted()函数,包括它们的语法、参数、返回值及示例。sort()函数用于原地排序列表,不返回任何值,而sorted()函数会返回一个新的排序列表,原始列表保持不变。
摘要由CSDN通过智能技术生成

@TOC

sort()

  • 描述
    sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

  • 语法

      list.sort( key=None, reverse=False)
    
  • 参数

      key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
      reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
    
  • 返回值
    该方法没有返回值,但是会对列表的对象进行排序。

示例:

aList = ['Google', 'Runoob', 'Taobao', 'Facebook']

aList.sort()
print("List : ", aList)

vowels = ['e', 'a', 'u', 'o', 'i']
vowels.sort(reverse=True)
print('降序输出vowels:', vowels)


def takeSecond(elem):
    return elem[1]


random = [(2, 2), (3, 4), (4, 1), (1, 3)]
random.sort(key=takeSecond)
print('排序列表random:', random)

结果:

List :  ['Facebook', 'Google', 'Runoob', 'Taobao']
降序输出vowels: ['u', 'o', 'i', 'e', 'a']
排序列表random: [(4, 1), (2, 2), (1, 3), (3, 4)]

标题sorted()

  • sort 与 sorted 区别:

      sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
      list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
    
  • 语法

      sorted(iterable, key=None, reverse=False)  
    
  • 参数

      iterable -- 可迭代对象。
      key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
      reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。
    
  • 返回值
    返回重新排序的列表

示例:

aList = [5, 2, 3, 1, 4]
print(sorted(aList))

bDict = {1: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'}
print(sorted(bDict))


# 利用key进行倒序排序
def f(x):
    return x * -1


example_list = [5, 0, 6, 1, 2, 7, 3, 4]
result_list = sorted(example_list, key=f)

print("result_list:", result_list)

# 要进行反向排序,也通过传入第三个参数 reverse=True
result_list2 = sorted(example_list, reverse=True)
print("result_list2:", result_list2)

结果:

[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
result_list: [7, 6, 5, 4, 3, 2, 1, 0]
result_list2: [7, 6, 5, 4, 3, 2, 1, 0]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值