[PYTHON] Code qui définit les valeurs par défaut en cas d'AttributeError

Sachez que vous obtiendrez une AttributeError lors de l'écriture de code en Python

Dans le code ci-dessous, AttributeError se produit car l'attribut de nom n'est pas défini dans la classe Test.

test_code.py


class Test:
     def __init__(self, cd):
            self.cd = cd


test = Test("c001")
print(test.cd) #c001
print(test.name) # AttributeError

Lorsque vous écrivez du code en prévision de l'absence d'attributs, utilisez getattr comme suit.

https://docs.python.org/3.5/library/functions.html#getattr

test_code2.py


class Test:
     def __init__(self, cd):
            self.cd = cd


test = Test("c001")
print(test.cd) #c001
print(getattr(test, "name", "default value")) #Puisqu'il n'y a pas de nom d'attribut, la valeur par défaut est affichée

Recommended Posts

Code qui définit les valeurs par défaut en cas d'AttributeError
Rendre la valeur par défaut de l'argument immuable
Découvrez la fraction de la valeur saisie en python
Rechercher par la valeur de l'instance dans la liste
N'y a-t-il pas une valeur par défaut dans le dictionnaire?
#Une fonction qui renvoie le code de caractère d'une chaîne de caractères
Rendre la valeur par défaut de l'argument immuable (explication de l'article)
[Golang] Spécifiez un tableau pour la valeur de la carte
L'histoire selon laquelle la valeur de retour de tape.gradient () était None
Remarque sur le comportement par défaut de collate_fn dans PyTorch
Partiel en cas de problème
Expliquez le code de Tensorflow_in_ROS
Obtenez la valeur tout en spécifiant la valeur par défaut de dict en Python
L'histoire selon laquelle Fabric ne peut pas obtenir le code d'état au milieu du tube dans le script shell
Lors de l'incrémentation de la valeur d'une clé qui n'existe pas
Soyez prudent lorsque vous spécifiez la valeur d'argument par défaut dans la série Python 3
Comment implémenter du code Java en arrière-plan de Red Hat (Linux ONE)
J'ai écrit le code pour écrire le code Brainf * ck en python
Une fonction qui mesure le temps de traitement d'une méthode en python
L'histoire de la participation à AtCoder
À propos de la valeur de retour de pthread_mutex_init ()
À propos de la valeur de retour de l'histogramme.
L'histoire du "trou" dans le fichier
À propos du cas où le haut-parleur ne produisait pas de son dans Ubuntu LTS 20.04
Le cas où l'installation de pip est devenue plus facile avant que je ne le sache
Lecture de code de faker, une bibliothèque qui génère des données de test en Python
J'ai essayé d'afficher la valeur d'altitude du DTM dans un graphique
[Comprendre en 3 minutes] Le début de Linux
Vérifiez le comportement du destroyer en Python
Ceci et celui de la notation d'inclusion.
Gestion des codes de caractères des fichiers en IronPython
L'histoire d'une erreur dans PyOCR
Implémenter une partie du processus en C ++
[Bash / linux] Notes en cas de problème
[Python3] Réécrire l'objet code de la fonction
Le résultat de l'installation de python sur Anaconda
Principes de base pour exécuter NoxPlayer en Python
Obtenez la valeur de la couche intermédiaire de NN
À la recherche du FizzBuzz le plus rapide en Python
[Python] Récupère le code de caractère du fichier
Obtenir la liste de codes EDINET en Python
Collection de conseils Numpy, Pandas souvent utilisés sur le terrain
Parlez des fonctionnalités dont les pandas et moi étions en charge dans le projet
Pour générer une valeur au milieu d'une cellule avec Jupyter Notebook
Trouvez l'index des éléments qui correspondent aux conditions dans la trame / série de données pandas
Notez que la valeur par défaut du solveur LogisticRegression est devenue lbfgs.
Créez un BOT qui affiche le nombre de personnes infectées dans le nouveau Corona
[Django] Créez un formulaire qui remplit automatiquement l'adresse à partir du code postal
Comparez la somme de chaque élément dans deux listes avec la valeur spécifiée en Python
Comment trouver le coefficient de la courbe approximative passant par les sommets en Python
[Discode Bot] J'ai essayé de créer un Bot qui me dit la valeur de race de Pokemon
Correspondance de l'événement selon lequel le résultat de form.is_valid () est toujours False dans le système Django2