Maison développement back-end Tutoriel Python Pourquoi une erreur 'La propriété n'existe pas' lors de l'appel d'une propriété dans une classe Python?

Pourquoi une erreur 'La propriété n'existe pas' lors de l'appel d'une propriété dans une classe Python?

Apr 01, 2025 pm 07:18 PM
python ai Pourquoi

Pourquoi une erreur

Cet article analyse le problème AttributeError causé par l'erreur d'appel d'attribut de classe dans Python 3.12. Le problème découle d'une simple erreur d'orthographe qui fait que l'attribut de classe ne peut pas être initialisé correctement.

Description de la question:

Le code lance AttributeError lors de l'appel de l'attribut défini dans la méthode __init__ , ce qui incite que l'attribut n'existe pas.

Code d'erreur:

 classe getConfig (objet):
    def __int __ (self): # Erreur Opelg: __int__ au lieu de __init__
        current_dir = os.path.dirname (os.path.abspath (__ file__))
        print (current_dir)
        sys_cfg_file = os.path.join (current_dir, "sysconfig.cfg")
        self.conf = configParser.ConfigParser ()
        self.conf.read (sys_cfg_file)

    def get_db_host (self):
        db_host = self.conf.get ("db", "hôte")
        retourner db_host

Si __name__ == "__main__":
    gc1 = getConfig ()
    var = gc1.get_db_host ()
Copier après la connexion

Message d'erreur:

 <code>AttributeError: 'getconfig' object has no attribute 'conf'</code>
Copier après la connexion

Analyse des erreurs:

La méthode __int__ n'est pas un constructeur dans Python, le nom du constructeur correct est __init__ . En raison d'une faute de frappe, la méthode __init__ n'est pas appelée, donc la propriété self.conf n'est pas initialisée, provoquant la méthode get_db_host pour essayer d'accéder à la propriété inexistante conf .

Solution:

Corriger __int__ à __init__ et recommander une méthode de dénomination plus standardisée (comme la capitalisation des initiales):

 Importer un système d'exploitation
Importez ConfigParser # Assurez-vous que le module configParser est importé de classe GetConfig (objet):
    def __init __ (soi):
        current_dir = os.path.dirname (os.path.abspath (__ file__))
        print (current_dir)
        sys_cfg_file = os.path.join (current_dir, "sysconfig.cfg") #it est recommandé que les noms de fichiers utilisent également les spécifications de nommage cohérentes self.conf = configParser.configparser ()
        self.conf.read (sys_cfg_file)

    def get_db_host (self):
        db_host = self.conf.get ("db", "hôte") # Il est recommandé d'utiliser "db" en majuscules pour maintenir la cohérence return db_host

Si __name__ == "__main__":
    gc1 = getConfig ()
    var = gc1.get_db_host ()
    Imprimer (var) # Imprimez le résultat et vérifiez s'il réussit
Copier après la connexion

Avec cette correction simple, le code s'exécutera normalement et avec succès avec succès conf . N'oubliez pas que Python est sensible à la casse et que les spécifications de dénomination cohérentes sont essentielles à la lisibilité et à la maintenabilité de votre code.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Système de fusion, expliqué
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1666
14
Tutoriel PHP
1273
29
Tutoriel C#
1252
24
Classement d'échange quantitatif 2025 Top 10 des recommandations pour les applications de trading quantitatif de la monnaie numérique Classement d'échange quantitatif 2025 Top 10 des recommandations pour les applications de trading quantitatif de la monnaie numérique Apr 30, 2025 pm 07:24 PM

Les outils de quantification intégrés de l'échange comprennent: 1. Binance: fournit un module quantitatif à terme Binance Futures, des frais de manutention faible et prend en charge les transactions assistées par l'IA. 2. OKX (OUYI): prend en charge la gestion multi-comptes et le routage des ordres intelligents, et fournit un contrôle des risques au niveau institutionnel. Les plates-formes de stratégie quantitative indépendantes comprennent: 3. 3Commas: générateur de stratégie de glisser-déposer, adapté à l'arbitrage de la couverture multiplateforme. 4. Quadancy: Bibliothèque de stratégie d'algorithme de niveau professionnel, soutenant les seuils de risque personnalisés. 5. Pionex: stratégie prédéfinie intégrée, frais de transaction bas. Les outils de domaine vertical incluent: 6. CryptoPper: plate-forme quantitative basée sur le cloud, prenant en charge 150 indicateurs techniques. 7. Bitsgap:

Le top5 des échanges les plus sûrs en 2025: Guide de Black U pour éviter les stands, la règle de 100% des fonds pour sauver des vies Le top5 des échanges les plus sûrs en 2025: Guide de Black U pour éviter les stands, la règle de 100% des fonds pour sauver des vies May 08, 2025 pm 08:27 PM

Dans le domaine du trading des crypto-monnaies, la sécurité des échanges a toujours été au centre des utilisateurs. En 2025, après des années de développement et d'évolution, certains échanges se distinguent avec leurs mesures de sécurité exceptionnelles et leur expérience utilisateur. Cet article présentera les cinq échanges les plus sécurisés en 2025 et fournira des guides pratiques sur la façon d'éviter les utilisateurs de Black U (Hacker Attacks) pour s'assurer que vos fonds sont à 100% sécurisés.

Python vs JavaScript: Quelle langue devez-vous apprendre? Python vs JavaScript: Quelle langue devez-vous apprendre? May 03, 2025 am 12:10 AM

Le choix de Python ou JavaScript doit être basé sur le développement de carrière, la courbe d'apprentissage et l'écosystème: 1) le développement de carrière: Python convient à la science des données et au développement de back-end, tandis que JavaScript convient au développement frontal et complet. 2) Courbe d'apprentissage: la syntaxe Python est concise et adaptée aux débutants; La syntaxe JavaScript est flexible. 3) Ecosystème: Python possède de riches bibliothèques informatiques scientifiques, et JavaScript a un puissant cadre frontal.

Python et Javascript: comprendre les forces de chacun Python et Javascript: comprendre les forces de chacun May 06, 2025 am 12:15 AM

Python et JavaScript ont chacun leurs propres avantages, et le choix dépend des besoins du projet et des préférences personnelles. 1. Python est facile à apprendre, avec une syntaxe concise, adaptée à la science des données et au développement back-end, mais a une vitesse d'exécution lente. 2. JavaScript est partout dans le développement frontal et possède de fortes capacités de programmation asynchrones. Node.js le rend adapté au développement complet, mais la syntaxe peut être complexe et sujet aux erreurs.

Top 10 des applications de trading de devises virtuelles numériques en 2025 Résumé des 10 principales applications de change de monnaie numérique Top 10 des applications de trading de devises virtuelles numériques en 2025 Résumé des 10 principales applications de change de monnaie numérique May 08, 2025 pm 05:24 PM

Classement des dix principales applications de trading de devises virtuelles numériques en 2025: 1. Binance: diriger le monde, fournir des transactions efficaces et une variété de produits financiers. 2. OKX: Il est innovant et diversifié, soutenant une variété de types de transactions. 3. Huobi: stable et fiable, avec service de haute qualité. 4. Coinbase: Soyez amical pour les débutants et une interface simple. 5. Kraken: le premier choix pour les commerçants professionnels, avec des outils puissants. 6. Bitfinex: trading efficace, paires de trading riches. 7. Bittrex: conformité à la sécurité, coopération réglementaire.

Python Development_python Installation Python Development_python Installation May 07, 2025 pm 04:33 PM

Python peut fonctionner sur une variété de plates-formes, y compris nos communes: Windows, Unix, Linux et Macintosh. Cet article introduira en détail le processus d'installation de Python dans le système d'exploitation Windows. Mon système d'exploitation est la version Windows 7, 32 bits. Lors de l'installation de Python, nous pouvons choisir de l'installer dans le code source ou de sélectionner la version binaire déjà compilée pour l'installation. J'ai choisi ce dernier ici. Étape 1 Téléchargez le package d'installation. Nous téléchargeons le package d'installation de Python à partir du site officiel de Python: http://www.python.org. La version que j'ai sélectionnée est: Python-3.3.2.20 cliquez pour télécharger, i

Le dernier didacticiel de téléchargement pour OUYI OKX6.118.0 version Le dernier didacticiel de téléchargement pour OUYI OKX6.118.0 version May 07, 2025 pm 06:51 PM

Le dernier tutoriel de téléchargement pour OUYI OKX6.118.0 Version: 1. Cliquez sur le lien rapide de l'article; 2. Cliquez sur le téléchargement (si vous êtes un utilisateur Web, veuillez d'abord enregistrer les informations). La dernière version Android V6.118.0 optimise certaines fonctions et expériences pour faciliter le trading. Mettez à jour l'application maintenant pour vivre une expérience commerciale plus extrême.

Les 10 meilleures plateformes de crypto-monnaie au monde qui prennent en charge les transactions multi-chaînes sont publiées avec autorité en 2025 Les 10 meilleures plateformes de crypto-monnaie au monde qui prennent en charge les transactions multi-chaînes sont publiées avec autorité en 2025 May 08, 2025 pm 07:15 PM

Selon les dernières évaluations et les tendances de l'industrie des institutions faisant autorité en 2025, les dix principales plateformes de crypto-monnaie au monde sont les dix principales plateformes de crypto-monnaie qui prennent en charge les transactions multi-chaînes, combinant le volume des transactions, l'innovation technologique, la conformité et la réputation de l'utilisateur Analyse complète:

See all articles