-1
votes

Comment puis-je obtenir la plus grande valeur d'un dictionnaire?

J'apprends toujours Python3. S'il vous plaît aidez mon problème :) J'ai un dictionnaire xxx

Comment puis-je obtenir les plus gros "gemmes" avec python3? J'ai essayé une partie du tutoriel, mais rien de tout ça ne marche.


1 commentaires

Est-ce que cela répond à votre question? extrait de python valeur max du dictionnaire imbriqué


4 Réponses :


0
votes

Le moyen le plus simple si vous êtes un débutant, il suffit de boucler sur la clé, de la valeur des paires et de garder une trace de la clé du plus grand. ici est une référence à la DOCS sur la boucle sur les articles de dictionnaire .

Vous avez un dictionnaire imbriqué, vous allez donc faire boucle sur le dictionnaire externe et examinez les entrées dans le dictionnaire intérieur pour trouver le plus grand. P>

quelque chose comme ceci: p>

def find_max(my_dict):
    key_for_max = None
    max_gem = -1
    # loop over outer dictionary
    for key, value in my_dict.items():
        # look into inner dictionary items to find maximum value for the 'gems' key
        if value['gems'] > max_gem:
            max_gem = value['gems']
            key_for_max = key

    return key_for_max, max_gem


0 commentaires

4
votes

Itéréter sur tous les dictionnaires à l'aide de la méthode .values ​​() code>, sélectionnez la valeur 'gemmes' code> et prenez le maximum.

max(d['gems'] for d in my_data.values())


0 commentaires

1
votes

Je recommanderais utiliser une fonction intégrée max code> et spécifier une clé code> argument: xxx pré>

permettez-moi de simplifier et Casser tout: P>

def keyFunction(a):
    return dictionary[a]['gems']
max_gems_key = max(dictionary, key=keyFunction)
max_gems_val = dictionary[max_gems_key]


0 commentaires

0
votes

Comme il s'agit d'un dictionnaire imbriqué si vous voulez utiliser pandas code> vous pouvez essayer de cette façon aussi.

import pandas as pd
df = pd.DataFrame(data_dict).T
df['gems'].max()


0 commentaires