Python 字典 cmp() 方法



Python 字典的 cmp() 方法用於根據鍵和值比較兩個字典。它有助於識別重複的字典以及進行字典間的關聯比較。

比較結果為:如果第一個字典小於第二個字典,則為 -1;如果第一個字典大於第二個字典,則為 1。如果兩者相等,則 cmp() 方法的結果為零。

注意:此方法僅在 Python 2.x 中可執行,在 Python 3.x 中不起作用。

語法

以下是 Python 字典 cmp() 方法的語法:

cmp(dict1, dict2)

引數

  • dict1 − 這是要與 dict2 比較的第一個字典。

  • dict2 − 這是要與 dict1 比較的第二個字典。

返回值

如果兩個字典相等,此方法返回 0;如果 dict1 < dict2,則返回 -1;如果 dict1 > dict2,則返回 1。

示例

如果第一個字典的值小於第二個字典的值,則此方法返回 -1。

以下示例演示了 Python 字典 cmp() 方法的用法。這裡,我們建立第一個字典 'dict1',它包含針對鍵 'Name' 和 'Age' 的值:'Zara' 和 '7'。然後,我們建立第二個字典 'dict2',其值 'Mahnaz' 和 '27' 對應的鍵與 'dict1' 相同。這裡,'dict1' 的兩個值都小於 'dict2'。

# first dictionary
dict1 = {'Name': 'Zara', 'Age': 7};
# second dictionary
dict2 = {'Name': 'Mahnaz', 'Age': 27};
print "Return Value : %d" %  cmp (dict1, dict2)

執行上述程式,會產生以下結果:

Return Value : -1

示例

如果第一個字典的值大於第二個字典的值,則此方法返回 1。

這裡,第一個字典 'dict1' 的值 'Mahnaz' 大於第二個字典 'dict2'。因此,使用 cmp() 方法返回的值為 '1'。

# first dictionary
dict1 = {'Name': 'Mahnaz', 'Age': 27};
# second dictionary
dict2 = {'Name': 'Abid', 'Age': 27};
print "Return Value : %d" %  cmp (dict1, dict2)

執行上述程式碼,得到以下結果:

Return Value : 1

示例

如果第一個字典的值等於第二個字典的值,則此方法返回 0。

在下面的程式碼中,第一個字典的鍵是:'Name' 和 'Age'。它們對應的值分別是:'Zara' 和 '7'。第二個字典 'dict2' 也包含與 'dict1' 相同的鍵值對。之後,使用 cmp() 方法檢索結果。

# first dictionary
dict1 = {'Name': 'Zara', 'Age': 7};
# second dictionary
dict2 = {'Name': 'Zara', 'Age': 7};
print "Return Value : %d" %  cmp (dict1, dict2)

以下是上述程式碼的輸出:

Return Value : 0
python_dictionary.htm
廣告