首頁 >後端開發 >Python教學 >Python函數介紹:sorted函數的函數和範例

Python函數介紹:sorted函數的函數和範例

WBOY
WBOY原創
2023-11-03 14:47:081037瀏覽

Python函數介紹:sorted函數的函數和範例

Python函數介紹:sorted函數的功能和範例

Python 是一門非常強大的程式語言,擁有豐富的內建函數和模組。在這個系列文章中,我們將逐一介紹Python常用的函數,並提供對應的範例來幫助讀者更好地理解和應用這些函數。本篇文章將詳細介紹 sorted 函數的功能和範例。

sorted 函數用於對可迭代物件進行排序,並傳回排序後的新清單。可用於對數字、字串、列表、元組等各種資料類型進行排序。 sorted 函數的基本語法如下:

sorted(iterable, key=None, reverse=False)

其中,iterable 表示要排序的可迭代對象,key 是一個可選參數,用於指定排序的依據,預設為None,即依照元素本身進行排序。 reverse 是可選參數,控制排序結果的升序或降序排列,預設為 False,即依照升序排列。

以下是一些特定的sorted 函數範例:

  1. 對數字清單進行排序:

numbers = [6, 9, 3, 1, 5]
sorted_numbers = sorted(numbers)
print(sorted_numbers)

輸出結果:[1, 3, 5, 6, 9]

  1. 對字串清單進行排序:

fruits = ['apple', 'banana', 'cherry', 'durian']
sorted_fruits = sorted(fruits)
print(sorted_fruits)

輸出結果:['apple', 'banana', 'cherry', 'durian']

  1. #依照字串長度進行排序:

fruits = ['apple', 'banana', 'cherry', 'durian']
sorted_fruits = sorted(fruits, key=len)
print(sorted_fruits)

輸出結果:['apple ', 'cherry', 'banana', 'durian']

  1. 依照字串反轉後的順序進行排序:

fruits = ['apple', 'banana', 'cherry', 'durian']
sorted_fruits = sorted(fruits, key=lambda x: x[::-1])
print(sorted_fruits)

輸出結果: ['banana', 'durian', 'cherry', 'apple']

  1. 對字典清單依照指定鍵排序:

students = [{'name ': 'Alice', 'age': 20}, {'name': 'Bob', 'age': 18}, {'name': 'Cathy', 'age': 22}]
sorted_students = sorted(students, key=lambda x: x['age'])
print(sorted_students)

輸出結果:[{'name': 'Bob', 'age': 18}, { 'name': 'Alice', 'age': 20}, {'name': 'Cathy', 'age': 22}]

上述範例示範了sorted 函數的常見用法。 sorted 函數還有其他一些用途和參數。透過設定reverse 參數為True 可以對結果進行降序排序:

numbers = [6, 9, 3, 1, 5]
sorted_numbers = sorted(numbers, reverse=True)
print( sorted_numbers)

輸出結果:[9, 6, 5, 3, 1]

需要注意的是,sorted 函數會傳回一個新的排序後的列表,不會修改原始的可迭代物件。如果需要修改原始對象,可以使用清單的 sort 方法。

總結:

本篇文章詳細介紹了 sorted 函數的功能和範例。 sorted 函數是 Python 中用於排序的重要函數,可對各種資料類型進行排序,並透過 key 參數支援自訂排序規則。透過理解 sorted 函數的使用方法,讀者可以更好地利用 Python 進行資料處理和排序操作。

希望本文能對讀者對 sorted 函數的理解和使用有所幫助。在後續的文章中,我們將繼續介紹其他 Python 函數的功能和範例,敬請期待。

以上是Python函數介紹:sorted函數的函數和範例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn