Python 列表排序,sort函數,分組排序


在Python中對列表的排序有一個內置的方法 sort

list1 = [9,8,7,6,5] 
list1.sort() 
print(list1) 
# [5, 6, 7, 8, 9]

  注意: sort 是一個內建的list.sort() 方法,可以直接改變列表的內容.

升序降序

sort 是可以接受一個reverse參數,這個參數是一個布爾值用來標記是否降序排序

# 升序
list1 = [9,8,7,6,5] 
list1.sort(reverse=False) 
print(list1) 
# [5, 6, 7, 8, 9]

# 降序
list1 = [9,8,7,6,5] 
list1.sort(reverse=True) 
print(list1) 
# [9, 8, 7, 6, 5]

sort 是可以接受一個key參數,這個參數是可以用來控制根據那個參數來排序

numbers = [{"id" : 7}, {"id" : 5}, {"id" : 9}]
numbers.sort(key=lambda x:x.get("id"))
# [{"id" : 5}, {"id" : 7}, {"id" : 9}]

分組排序

numbers = [8, 3, 1, 2, 5, 7, 9, 8]
group = {5, 7, 2, 8}
def helper(x):
    if x in group:
        return (0, x)
    return (1, x)

numbers.sort(key=helper)
print(numbers)
# [2, 5, 7, 8, 8, 1, 3, 9]

  

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM