J'apprends toujours Python3. S'il vous plaît aidez mon problème :)
J'ai un dictionnaire Comment puis-je obtenir les plus gros "gemmes" avec python3?
J'ai essayé une partie du tutoriel, mais rien de tout ça ne marche. P> p>
4 Réponses :
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
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())
Je recommanderais utiliser une fonction intégrée permettez-moi de simplifier et Casser tout: P> max code> et spécifier une clé code> argument: def keyFunction(a):
return dictionary[a]['gems']
max_gems_key = max(dictionary, key=keyFunction)
max_gems_val = dictionary[max_gems_key]
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()
Est-ce que cela répond à votre question? extrait de python valeur max du dictionnaire imbriqué