Python中列表的sort()方法


1.sorted()和sort()

  區別:sort是列表的方法,而sorted()是一個內置函數,sorted得到的結果會產生一個新的被排序的變量,之前的變量是不變的,所以元組排序甚至可以用sorted(元組),因為元組不可變可以用sorted排序得到新的元組

如果是列表的話就可以直接用sort方法排序了

2.sort()指定排序規則

  比如:students.sort(key=lambda student:student["age"])

  這表示指定按照student的age進排序。匿名函數作為參數。找到排序規則,這里的排序規則要求就是一個函數類型的參數

students=[
    {"name":"Alex","age":12,"height":175},
    {"name":"Jerry","age":18,"height":172},
    {"name":"Bob","age":22,"height":180},
    {"name":"Tom","age":14,"height":166}
]

students.sort(key=lambda student:student["age"])
print(students)


#實現機制,其實和定義一個函數,返回值指定為排序規則。s如果打印出來其實就是每一個元素和lambda中的student是一個意思
def foo(s):
    return s["height"]

students.sort(key=foo)
print(students)
--------------------------------------------------------------------------------
[{'name': 'Alex', 'age': 12, 'height': 175}, {'name': 'Tom', 'age': 14, 'height': 166}, {'name': 'Jerry', 'age': 18, 'height': 172}, {'name': 'Bob', 'age': 22, 'height': 180}]
[{'name': 'Tom', 'age': 14, 'height': 166}, {'name': 'Jerry', 'age': 18, 'height': 172}, {'name': 'Alex', 'age': 12, 'height': 175}, {'name': 'Bob', 'age': 22, 'height': 180}]

  

  


免責聲明!

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



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