Python中的高阶函数sorted
生活随笔
收集整理的這篇文章主要介紹了
Python中的高阶函数sorted
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.列表名.sort()和sorted()都是對列表進(jìn)行排序
?2.相同點:
? ? ? ? ?(1)默認(rèn)升序,如果要降序,則設(shè)置reverse = True
? ? ? ? ?(2)?都可以自定義排序規(guī)則,只需要設(shè)置key關(guān)鍵字
? 3.不同點:
? ? ? ? ? (1)?調(diào)用:?列表名.sort() ,? ?sorted()直接使用
? ? ? ? ? ?(2)sort?在列表內(nèi)部排序,sorted會生成一個新的列表,原列表不受影響.
4.普通的排序
# 普通排序,默認(rèn)升序 list1 = [34, 6, 4, 6, 2, 5, 1, 52561, 65] print(list1) list1.sort() print(list1)list1 = [34, 6, 4, 6, 2, 5, 1, 52561, 65] print(list1) list2 = sorted(list1) print(list2)# 降序排序 list1 = [34, 6, 4, 6, 2, 5, 1, 52561, 65] print(list1) list1.sort(reverse=True) print(list1)list1 = [34, 6, 4, 6, 2, 5, 1, 52561, 65] print(list1) list3 = sorted(list1,reverse=True) print(list3)打印結(jié)果:
[34, 6, 4, 6, 2, 5, 1, 52561, 65] [1, 2, 4, 5, 6, 6, 34, 65, 52561] [34, 6, 4, 6, 2, 5, 1, 52561, 65] [1, 2, 4, 5, 6, 6, 34, 65, 52561] [34, 6, 4, 6, 2, 5, 1, 52561, 65] [52561, 65, 34, 6, 6, 5, 4, 2, 1] [34, 6, 4, 6, 2, 5, 1, 52561, 65] [52561, 65, 34, 6, 6, 5, 4, 2, 1]5.自定義排序
"""可以自定義排序根據(jù)數(shù)字元素的絕對值排序 """ list4 = [-34, 54, 69, -42, 12, 341, 10, 98, -9] list4.sort(key=abs) print(list4)list4 = [-34, 54, 69, -42, 12, 341, 10, 98, -9] list5 = sorted(list4, key=abs) print(list5)打印結(jié)果:
[-9, 10, 12, -34, -42, 54, 69, 98, 341]
[-9, 10, 12, -34, -42, 54, 69, 98, 341]
6.字符串也可以排序,可以根據(jù)字母,也可以根據(jù)長度
list_1 = ["345", "26", "789", "450", "12", "1"] list_2 = sorted(list_1, key=func1) print(list_2)list_3 = ["sdfas", "evasdqsd", "dfea", "bsfe", "csfge", "cca"] list_4 = sorted(list_3) # 根據(jù)每個字符進(jìn)行排序,依次比較下去 print(list_4)list_5 = sorted(list_4, key=len) # 按照長度 print(list_5)打印結(jié)果:
['bsfe', 'cca', 'csfge', 'dfea', 'evasdqsd', 'sdfas']
['cca', 'bsfe', 'dfea', 'csfge', 'sdfas', 'evasdqsd']
總結(jié)
以上是生活随笔為你收集整理的Python中的高阶函数sorted的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python中的高阶函数filter
- 下一篇: Python实现简单的购物车