Javascript按鍵排序對象

| | | | |

要在 Python 中按值對字典進行排序,可以使用 sorted() 函數。 Python 的 sorted () 函數可用於按鍵對字典進行排序,它允許自定義排序方法。 sorted () 接受三個參數:subject、key 和 inverse

字典是未排序的數據結構。他們使用映射結構來存儲數據。字典將鍵與值關聯,創建包含關聯數據的對。

使用 Python sorted () 方法,您可以按值對字典的內容進行排序。例如,要對咖啡館菜單中項目的受歡迎程度進行排名或按字母順序列出它們,您可以使用 Python sorted () 方法。本教程將解釋 sorted () 方法的工作原理以及如何使用它對字典的內容進行排序。

Sorted Python () Refresher

Python 內置的 sorted() 函數可用於根據鍵對可迭代對象進行排序,例如列表、元組和字典。 sorted() 函數對指定的可迭代對象的元素進行排序,並使用新排序的值創建一個新對象。

這是 sorted 的語法() :

sorted(object, key, reverse)

方法接受三個參數:

  • object:您要排序的可迭代對象(必需)
  • key :允許您執行自定義排序的函數(可選)
  • reverse :指定對像是否必須降序排序(可選)

可以看到,"Object"是唯一的需要的參數。如果您決定不使用可選的 "key""reverse" 參數,Python 將自動按升序對對象進行排序。

假設我們有一家咖啡館,並且想要檢索按字母順序排列的 Coffee Club(忠誠度)客戶列表。我們已經有一個客戶列表,但它是按日期排序的 我們可以使用以下代碼對我們的列表進行排序:

我們的代碼對數組 customers 並返回以下內容:

[`Alexandria Kidd`, `Darius Rowland`, `Isaac Borthwick`, `Kaley Fernandez`]

在我們的代碼的第一行,我們聲明了一個存儲我們客戶姓名的列表;這個 nco 元素被稱為:客戶。然後我們使用方法sorted()對客戶姓名列表進行升序排序;這個新列表稱為:sorted_customers。最後,我們使用 print() 函數將新排序的列表打印到控制台。

按值排序字典

假設你有一本字典,並希望按鍵值對對其進行排序。您可以同時使用兩個函數來做到這一點:items ()sorted ()

items () 函數允許您檢索字典中的項目。我們可以將此函數與 sorted() 函數和自定義參數 key 結合使用,以按值對字典進行排序。考慮以下兩個示例:

示例 1:按降序排序

返回條形。假設我們有一本字典,其中存儲了我們咖啡館菜單上的項目以及在過去一個月中每個項目的訂購量。我們想看看上個月哪個咖啡館最受歡迎,所以我們決定按值的降序對字典進行排序。

這是一個我們可以用來對字典內容進行排序的程序. in value:

我們的代碼返回以下內容:

espresso 72

latte 56

cappuccino 54

美式 48

cortado 41

我們的代碼中發生了很多事情,所以讓我們分解一下。

在代碼的開頭,我們定義了一個名為 commands 將咖啡名稱存儲為 keys ,將出售的數量存儲為 values ‚Äã‚Äã

接下來,我們使用sorted()方法對字典commands按值進行排序。下面是我們如何使用排序的 () 的詳細分類:

參數 文字 說明
object orders.items () 指的是我們的“訂單”字典中的所有值,Äã,Äã。如果我們只使用“命令”,我們將不得不參考項目的索引位置來獲取其單獨的值。而如果我們使用 order.items () ,則使用列表中的項目創建一個可迭代列表。
key key = lambda x: x [1] A 機制sort 允許我們按值對字典進行排序。這是一個 Lambda 函數的示例,它是一個未命名的函數。
reverse reverse = True 假設我們希望我們的數據在 < em> 按降序排列。

最後,我們將創建一個 <> 循環代碼 for 傳入每個元素在我們的 sort_order 中創建並打印名稱和鍵值,按 sort_order 中指定的順序排序。

示例 2:排序升序

類似地,如果我們想找出我們咖啡館裡最不受歡迎的飲料,我們可以使用上面相同的代碼,但沒有 reverse = True 參數。這是一個示例代碼:

當我們運行我們的代碼時,會返回以下值 ‚Äã‚Äã:

cortado 41

美式48

卡布奇諾54

拿鐵56

代碼>

72 express

如您所見,我們的代碼返回了一個按升序排序的項目列表,基於數量每個項目在上個月排序。

只理解列表

另外,我們可以使用理解列表來排序按值查看字典的內容。了解列表是在 Python 中創建列表的一種簡潔技術,如果它們創建更複雜的排序方法,您可以節省空間。

這是我們將使用的代碼使用列表推導根據訂購的每種咖啡的數量按升序對我們的咖啡訂單進行排序:

當我們運行我們的代碼時,返回如下響應:

cortado 41

美式 48

cappuccino 54

milk 56

express 72

我們的代碼的結果和我們之前排序的例子一樣orders 列表的內容按升序排列。但是,我們沒有定義 sort_orders 變量並創建 指令循環來遍歷排序列表,而是使用理解列表的技術創建了一個列表。

了解我們上面創建的列表,按升序對列表中的每個項目進行排序,然後將每個項目的鍵和值從字典打印到控制台。

結論

在 Python 中使用字典時,按值對字典進行排序是一種常見的操作。sort() 方法允許您根據需要對一組數據進行排序。

本教程討論了,示例,如何使用<方法代碼> sorted()在Python中按值排序字典,包括如何使用key parametersreverse

您現在可以像 Python 專家一樣開始按值對字典進行排序了!

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method