Hướng dẫn get all key with max value in dictionary python - nhận tất cả khóa có giá trị tối đa trong python từ điển

Trong bài viết này, chúng tôi sẽ thảo luận về các cách để tìm giá trị tối đa trong từ điển và cả các khóa tất cả có giá trị tối đa.

Giả sử chúng ta có một từ điển chuỗi và int, tức là.

# Create a dictionary of string and int
sampleDict = {  'Ritika': 5, 'Sam': 27, 'John' : 10 , 'Sachin' : 14, 'Mark' : 19 }

Bây giờ giả sử chúng ta muốn tìm giá trị tối đa trong từ điển và cũng là chìa khóa liên quan đến nó.

Cho rằng chúng ta sẽ sử dụng hàm tối đa [], tức là.

# Find Key with Max Value
itemMaxValue = max[sampleDict.items[], key=lambda x : x[1]]

print['Max value in Dict: ', itemMaxValue[1]]
print['Key With Max value in Dict: ', itemMaxValue[0]]

Đầu ra:

Max value in Dict:  27
Key With Max value in Dict:  Sam

Nó đã hoạt động như thế nào?

Để biết nó hoạt động như thế nào, chúng ta cần giải thích một chút về hàm tối đa [], tức là.

max[iterable, *[, key, default]]

Arguments:

Quảng cáo

  • Có thể lặp lại: một đối tượng có thể lặp lại
  • Khóa: Một hàm sẽ được áp dụng cho từng mục trong ITEBLE và nó trả về một giá trị dựa trên đối số được chuyển.

Returns:

  • Nó trả về mặt hàng với giá trị tối đa trong ITBER có thể. Nếu chức năng khóa không được cung cấp thì nó trực tiếp so sánh các mục trong ITable để tìm ra giá trị tối đa. Nếu chức năng khóa được cung cấp thì thay vì so sánh trực tiếp các mục, nó sẽ gọi chức năng chính trên mục và sau đó so sánh nó với các mục khác.

Bây giờ trong ví dụ trên để tìm khóa có giá trị tối đa trong từ điển. Chúng tôi đã vượt qua các khoản hoàn trả khác nhau của Dict.Items [], về cơ bản là một bộ dữ liệu chính / giá trị. Bây giờ hàm tối đa [] có thể so sánh trực tiếp các bộ dữ liệu này. Vì vậy, chúng tôi cũng đã vượt qua một chức năng quan trọng, tức là.

key=lambda x : x[1]

Chức năng khóa này chấp nhận một tuple như một đối số và trả về giá trị thứ 2 trong mục, tức là mục tại INDEX 1. Vì vậy, về cơ bản, khi một bộ khóa, giá trị được chuyển cho hàm này, nó trả về trường giá trị từ bộ thuật đó.

Vì vậy, trong mã sau,

max[sampleDict.items[], key=lambda x : x[1]]

Sampledict.items [] trả về một hàm có thể lặp lại và hàm tối đa [] gọi hàm chính trên mỗi mục của điều này có thể so sánh với các mục khác trong điều kiện không thể sử dụng được. Vì vậy, về cơ bản chức năng tối đa [] sẽ so sánh các mục như,

key[item1] < key[item2]

Nó trả về mục [phím/giá trị tuple] với giá trị tối đa trong từ điển. Từ đó, chúng tôi tìm nạp các trường khóa và giá trị.

Nếu có nhiều khóa trong từ điển có giá trị tối đa thì giải pháp này sẽ không hoạt động, vì hàm tối đa [] luôn trả về lần xuất hiện đầu tiên của giá trị tối đa. Vậy, điều gì sẽ xảy ra nếu chúng ta muốn tìm tất cả các phím có giá trị tối đa?

Tìm tất cả các phím có giá trị tối đa trong từ điển

Giả sử chúng ta có một từ điển trong đó nhiều khóa có giá trị tối đa, tức là.

# Create a dictionary of string and int
sampleDict = {'Ritika': 5, 'Sam': 27, 'John': 12, 'Sachin': 14, 'Mark': 19, 'Shaun' : 27}

Bây giờ để tìm tất cả các khóa có giá trị tối đa, trước tiên chúng ta sẽ sử dụng hàm tối đa [] để tìm khóa đầu tiên có giá trị tối đa như trên. Sau đó, một khi chúng ta biết giá trị tối đa trong từ điển thì chúng ta sẽ lặp lại tất cả các mục trong từ điển để tìm hiểu tất cả các khóa có giá trị tối đa, tức là.

# Find item with Max Value in Dictionary
itemMaxValue = max[sampleDict.items[], key=lambda x: x[1]]

print['Maximum Value in Dictionary : ', itemMaxValue[1]]

listOfKeys = list[]
# Iterate over all the items in dictionary to find keys with max value
for key, value in sampleDict.items[]:
    if value == itemMaxValue[1]:
        listOfKeys.append[key]

print['Keys with maximum Value in Dictionary : ', listOfKeys]

Đầu ra:

Nó đã hoạt động như thế nào?

Python Dictionary Tutorial - Series:

  1. Để biết nó hoạt động như thế nào, chúng ta cần giải thích một chút về hàm tối đa [], tức là.
  2. Quảng cáo
  3. Có thể lặp lại: một đối tượng có thể lặp lại
  4. Khóa: Một hàm sẽ được áp dụng cho từng mục trong ITEBLE và nó trả về một giá trị dựa trên đối số được chuyển.
  5. Nó trả về mặt hàng với giá trị tối đa trong ITBER có thể. Nếu chức năng khóa không được cung cấp thì nó trực tiếp so sánh các mục trong ITable để tìm ra giá trị tối đa. Nếu chức năng khóa được cung cấp thì thay vì so sánh trực tiếp các mục, nó sẽ gọi chức năng chính trên mục và sau đó so sánh nó với các mục khác.
  6. Bây giờ trong ví dụ trên để tìm khóa có giá trị tối đa trong từ điển. Chúng tôi đã vượt qua các khoản hoàn trả khác nhau của Dict.Items [], về cơ bản là một bộ dữ liệu chính / giá trị. Bây giờ hàm tối đa [] có thể so sánh trực tiếp các bộ dữ liệu này. Vì vậy, chúng tôi cũng đã vượt qua một chức năng quan trọng, tức là.
  7. Chức năng khóa này chấp nhận một tuple như một đối số và trả về giá trị thứ 2 trong mục, tức là mục tại INDEX 1. Vì vậy, về cơ bản, khi một bộ khóa, giá trị được chuyển cho hàm này, nó trả về trường giá trị từ bộ thuật đó.
  8. Vì vậy, trong mã sau,
  9. Sampledict.items [] trả về một hàm có thể lặp lại và hàm tối đa [] gọi hàm chính trên mỗi mục của điều này có thể so sánh với các mục khác trong điều kiện không thể sử dụng được. Vì vậy, về cơ bản chức năng tối đa [] sẽ so sánh các mục như,
  10. Nó trả về mục [phím/giá trị tuple] với giá trị tối đa trong từ điển. Từ đó, chúng tôi tìm nạp các trường khóa và giá trị.
  11. Nếu có nhiều khóa trong từ điển có giá trị tối đa thì giải pháp này sẽ không hoạt động, vì hàm tối đa [] luôn trả về lần xuất hiện đầu tiên của giá trị tối đa. Vậy, điều gì sẽ xảy ra nếu chúng ta muốn tìm tất cả các phím có giá trị tối đa?
  12. Tìm tất cả các phím có giá trị tối đa trong từ điển
  13. Giả sử chúng ta có một từ điển trong đó nhiều khóa có giá trị tối đa, tức là.
  14. Bây giờ để tìm tất cả các khóa có giá trị tối đa, trước tiên chúng ta sẽ sử dụng hàm tối đa [] để tìm khóa đầu tiên có giá trị tối đa như trên. Sau đó, một khi chúng ta biết giá trị tối đa trong từ điển thì chúng ta sẽ lặp lại tất cả các mục trong từ điển để tìm hiểu tất cả các khóa có giá trị tối đa, tức là.
  15. Maximum Value in Dictionary :  27
    Keys with maximum Value in Dictionary :  ['Sam', 'Shaun']
    
    Python Hướng dẫn từ điển - Sê -ri:
  16. Từ điển trong Python là gì và tại sao chúng ta cần nó?
  17. Tạo từ điển trong Python
  18. Lặp lại trên từ điển
  19. Kiểm tra xem một khóa có tồn tại trong từ điển không

Kiểm tra xem giá trị có tồn tại trong từ điển không

Nhận tất cả các chìa khóa trong từ điển

# Find Key with Max Value
itemMaxValue = max[sampleDict.items[], key=lambda x : x[1]]

print['Max value in Dict: ', itemMaxValue[1]]
print['Key With Max value in Dict: ', itemMaxValue[0]]
0

Output:

# Find Key with Max Value
itemMaxValue = max[sampleDict.items[], key=lambda x : x[1]]

print['Max value in Dict: ', itemMaxValue[1]]
print['Key With Max value in Dict: ', itemMaxValue[0]]
1

Làm thế nào để bạn có được tất cả các khóa có giá trị cao nhất trong từ điển?

Để tìm khóa có giá trị tối đa trong từ điển Python D, hãy gọi Max [d, key = d.get]. Điều này trả về khóa với giá trị tối đa sau khi áp dụng dict. Nhận phương thức [k] cho tất cả các khóa k để có được các giá trị liên quan của chúng.max[d, key=d. get] . This returns the key with maximum value after applying the dict. get[k] method to all keys k to get their associated values.

.Values ​​làm gì trong từ điển Python?

Giá trị [] Danh sách trả về của các khóa hoặc giá trị một cách rõ ràng.Ngoài ra còn có một mục [] trả về danh sách các bộ đếm [khóa, giá trị], đây là cách hiệu quả nhất để kiểm tra tất cả dữ liệu giá trị chính trong từ điển.return lists of the keys or values explicitly. There's also an items[] which returns a list of [key, value] tuples, which is the most efficient way to examine all the key value data in the dictionary.

Làm thế nào để bạn tìm thấy giá trị tối đa trong Python?

Hàm python max [] hàm tối đa [] hàm trả về mục có giá trị cao nhất hoặc mục có giá trị cao nhất trong một số không thể điều chỉnh được.Nếu các giá trị là chuỗi, một so sánh theo thứ tự bảng chữ cái được thực hiện.max[] Function The max[] function returns the item with the highest value, or the item with the highest value in an iterable. If the values are strings, an alphabetically comparison is done.

Làm thế nào để bạn tìm thấy tối đa của một từ điển?

Làm thế nào để tìm giá trị tối đa trong từ điển..
Phương pháp 1: Sử dụng dict.Giá trị [] và Max [] để hiển thị giá trị tối đa ..
Phương pháp 2: Sử dụng danh sách và tối đa [] để hiển thị giá trị tối đa ..
Phương pháp 3: Sử dụng dict.Keys [] và Dict.giá trị [] để hiển thị giá trị và khóa tối đa ..
Phương pháp 4: Sử dụng dict.Nhận và tối đa [] để hiển thị giá trị và khóa tối đa ..

Bài Viết Liên Quan

Chủ Đề