Obtenez la valeur tout en spécifiant la valeur par défaut de dict en Python

Je l'oublierai bientôt, alors prends note.

Lors de la récupération d'une valeur à partir d'une instance dict avec une clé

Si vous y réfléchissez, il est bon d'utiliser la méthode get.

>>> d = {"a": 1, "b": 2} 

>>> d["c"]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'c'

>>> d.get("c") #Aucun n'est renvoyé si la valeur par défaut n'est pas spécifiée

>>> d.get("c", 3) #Si la valeur par défaut est spécifiée, cette valeur sera renvoyée.
3

>>> 

La bonne chose est que vous pouvez spécifier get (key [, default]) et la valeur par défaut. Ainsi, vous pouvez facilement écrire quelque chose comme ce qui suit avec get.

>>> c = d["c"] if "c" in d else 3
>>> c
3

>>> c = d["c"] if d.has_key("c") else 3
>>> c
3

#Les gars ci-dessus peuvent écrire parfaitement avec la spécification par défaut de get
>>> c = d.get("c", 3)
>>> c
3

De plus, le traitement suivant, qui a été importé defaultdict pour écrire proprement, peut également être écrit avec get. Cependant, il est préférable d'utiliser defaultdict, donc si vous voulez améliorer la lisibilité, vous devez utiliser defaultdict.

>>> from collections import defaultdict
>>> dd = defaultdict(int, d)
>>> dd
defaultdict(<type 'int'>, {'a': 1, 'b': 2})

>>> dd["c"] += 1  #À une clé qui n'existe pas+=Aucune erreur ne se produit même si 1 est défini et que la valeur par défaut de int, 0, est implicitement définie.
>>> dd["c"]
1

#Vous pouvez écrire sans utiliser defaultdict en utilisant get
>>> d  
{'a': 1, 'b': 2}

>>> d["c"] = d.get("c", 0) + 1 #Obtenir la valeur par défaut 0 à partir d'une clé inexistante+1 faire
>>> d["c"]
1

Recommended Posts

Obtenez la valeur tout en spécifiant la valeur par défaut de dict en Python
Obtenez des résultats au format dict avec Python psycopg2
Obtenez la valeur sélectionnée dans le menu déroulant Selenium Python VBA
Obtenez votre fréquence cardiaque à partir de l'API fitbit en Python!
Obtenir des données de Quandl en Python
Obtenez le chemin du bureau en Python
Obtenez le chemin du script en Python
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Obtenez le chemin du bureau en Python
Obtenez le nom d'hôte en Python
Obtenez des taux de change à partir des taux de change ouverts en Python
Obtenez le niveau de la batterie de SwitchBot avec Python
Obtenir la liste de codes EDINET en Python
Obtenez la probabilité de précipitation de XML avec Python
[Python] Obtenez la couleur principale de la capture d'écran
Obtenir l'historique des métriques de MLflow en Python
Obtenez des données de séries chronologiques de k-db.com avec Python
[Python] Récupérez les fichiers dans le dossier avec Python
Récupérer l'appelant d'une fonction en Python
Obtenez le titre de la fenêtre du système X Window en Python
Comment obtenir les fichiers dans le dossier [Python]
Obtenez uniquement des articles de pages Web en Python
N'y a-t-il pas une valeur par défaut dans le dictionnaire?
Obtenir la date en Python
Téléchargez des fichiers tout en affichant la progression dans Python 3.x
Comment récupérer la nième plus grande valeur en Python
Comment obtenir le nom de la variable lui-même en python
[Python] Récupérez le texte de la loi à partir de l'API e-GOV law
[Python] Obtenez les nombres dans l'image graphique avec OCR
Affiche l'heure à partir du moment où le programme a été lancé en python
[python] Récupère la liste des classes définies dans le module
Obtenez des variables d'environnement en Python, sinon définissez les valeurs par défaut
Obtenez des données du module GPS à 10 Hz avec Python
Récupérer le code retour d'un script Python depuis bat
Trouvez la partie 575 de Wikipedia en Python
Obtenir la taille (nombre d'éléments) de Union Find en Python
[Python] Récupère l'élément en spécifiant l'attribut name dans BeautifulSoup
Obtenez l'URL de la destination de la redirection HTTP en Python
Code qui définit les valeurs par défaut en cas d'AttributeError
Obtenez le mois dernier en Python
Trouver des erreurs en Python
Calcul de la valeur de jeu de cisaillement en Python
OCR à partir de PDF en Python
Obtenir la valeur d'une clé spécifique jusqu'à l'index spécifié de la liste de dictionnaires en Python
Obtenez le type MIME en Python et déterminez le format de fichier
Obtenez le nombre d'éléments spécifiques dans la liste python
Utiliser un dict clé de liste en Python
Obtenir la taille du terminal en Python
[Python] Récupérez le mois précédent
Obtenir explicitement EOF en python
Obtenir l'index de la nième valeur la plus grande / la plus petite de la liste en Python
Obtenez automatiquement le port où Arduino est bloqué en Python
Obtenez la date et l'heure actuelles en Python, en tenant compte du décalage horaire
Appuyez sur REST en Python pour obtenir des données de New Relic
Obtenir des constantes de macro à partir du fichier d'en-tête C (++) (.h) en Python
Obtenez des notes Evernote en Python