Table des matières
Qu'est-ce que __str__ ?
Qu'est-ce que __repr__ ?
Différences clés
Quand utiliser qui
Maison développement back-end Tutoriel Python Différence entre `__str__` et` __repr__` Python

Différence entre `__str__` et` __repr__` Python

Jul 04, 2025 am 02:11 AM
python str repr

Dans Python, __str__ et __Repr__ sont des méthodes spéciales qui définissent les représentations de chaînes d'objets mais servent des objectifs distincts. 1. __Str__ renvoie une chaîne lisible par l'homme et est utilisée par print () ou str (). 2. __Repr__ renvoie une expression python valide pour recréer l'objet et est utilisée par rep () ou dans des contextes de débogage. 3. Si seulement __repr__ est défini, il agit comme __str__, mais pas vice versa. 4. Utilisez __str__ pour la sortie orientée par les utilisateurs et __Repr__ pour le développement, l'exploitation forestière ou le débogage. Les deux peuvent être définis pour améliorer la convivialité de la classe, __repr__ étant idéalement sans ambiguïté et reproductible.

Différence entre `__str__` et` __repr__` Python

Dans Python, __str__ et __repr__ sont des méthodes spéciales utilisées pour définir comment les objets doivent être représentés comme des chaînes. Mais ils servent des objectifs différents et sont utilisés dans différents contextes.

Différence entre `__str__` et` __repr__` Python

Qu'est-ce que __str__ ?

La méthode __str__ est destinée à renvoyer une représentation de chaîne lisible par l'homme d'un objet. C'est ce qui est affiché lorsque vous utilisez la fonction print() ou le constructeur str() sur un objet.

Différence entre `__str__` et` __repr__` Python

Par exemple:

 Personne de classe:
    def __init __ (self, nom):
        self.name = nom

    Def __str __ (Self):
        return f "personne nommée {self.name}"

P = personne ("Alice")
imprimer (p) # sortie: personne nommée Alice
  • Utilisez __str__ lorsque vous souhaitez montrer aux utilisateurs une chaîne agréable.
  • Si __str__ n'est pas défini, Python reprendra l'utilisation de __repr__ .

Qu'est-ce que __repr__ ?

La méthode __repr__ est censée renvoyer une expression Python valide qui pourrait être utilisée pour recréer l'objet. C'est plus pour les développeurs que les utilisateurs finaux.

Différence entre `__str__` et` __repr__` Python

Voici à quoi cela pourrait ressembler:

 Personne de classe:
    def __init __ (self, nom):
        self.name = nom

    def __repr __ (self):
        return f "Person ('{self.name}')"

P = personne ("Alice")
Imprimer (rep (p)) # sortie: personne ('Alice')
  • L'objectif de __repr__ est la clarté et la non-ambiguïté.
  • Idéalement, vous devriez être en mesure de copier-coller la sortie de __repr__ dans le code et de recréer l'objet.

Différences clés

  • Public :

    • __str__ → pour les utilisateurs (propre, lisible)
    • __repr__ → Pour les développeurs (complet, précis)
  • Comportement de secours :

    • Si seulement __repr__ est défini, il agira également comme __str__ .
    • Mais si seulement __str__ existe, il ne sera pas utilisé lorsque repr() est appelé.
  • Contexte d'utilisation :

    • __str__ : print(obj) ou str(obj)
    • __repr__ : repr(obj) ou dans le REPL lors de l'évaluation des expressions

Certaines choses à garder à l'esprit:

  • Vous définissez souvent les deux dans de vrais projets - un pour l'affichage, un pour le débogage / journalisation.
  • Une bonne règle de base: __repr__ devrait être quelque chose que vous allez bien voir dans les journaux ou pendant le débogage.
  • Essayez de faire de __repr__ une expression valide afin que vous puissiez reproduire facilement l'objet.

Quand utiliser qui

Si vous enregistrez ou déboguez:

  • Allez avec __repr__ , car il donne des informations plus précises.

Si vous affichez des données à un utilisateur ou en écrivant une sortie:

  • Utilisez __str__ .

Vous n'avez pas toujours besoin des deux, mais les définir peut rendre vos cours beaucoup plus utilisables et informatifs.


Fondamentalement, rappelez-vous:
__str__ est pour les gens, __repr__ est destiné aux machines (ou aux développeurs).

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

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.

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 !

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 PHP
1543
276
Comment automatiser la saisie de données d'Excel à un formulaire Web avec Python? Comment automatiser la saisie de données d'Excel à un formulaire Web avec Python? Aug 12, 2025 am 02:39 AM

La méthode de remplissage des données Excel dans les formulaires Web à l'aide de Python est: utilisez d'abord des pandas pour lire les données Excel, puis utilisez le sélénium pour contrôler le navigateur pour remplir et soumettre automatiquement le formulaire; Les étapes spécifiques incluent l'installation de bibliothèques Pandas, OpenPyxl et Selenium, en téléchargeant le pilote de navigateur correspondant, en utilisant des pandas pour lire le nom, le courrier électronique, le téléphone et d'autres champs dans le fichier data.xlsx, le lancement du navigateur via le sélénium pour ouvrir la page Web cible, localiser les éléments de formulaire et remplir le traitement de données, en utilisant le formulaire Web pour traiter le contenu dynamique, ajouter le contenu de la charge dynamique, ajouter un traitement exception et traiter toutes les lignes de données dans une boucle.

Qu'est-ce que l'analyse des sentiments dans le trading des crypto-monnaies? Qu'est-ce que l'analyse des sentiments dans le trading des crypto-monnaies? Aug 14, 2025 am 11:15 AM

Table des matières Qu'est-ce que l'analyse des sentiments dans le trading des crypto-monnaies? Pourquoi l'analyse des sentiments est importante dans l'investissement des crypto-monnaies sources clés de données d'émotion a. Plateforme de médias sociaux b. Médias d'information c. Outils pour l'analyse des sentiments et la technologie Utilisé couramment des outils dans l'analyse des sentiments: Techniques adoptées: intégrer l'analyse des sentiments dans les stratégies de trading comment les traders l'utilisent: Exemple de stratégie: supposer le scénario de trading BTC Réglage du scénario: Signal émotionnel: interprétation des commerçants: Décision: Résultats: Limitations et risques de l'analyse des sentiments en utilisant de plus en plus les émotions pour le commerce des crypto-oreilles. Une récente étude en 2025 de Hamid

Comment gérer les grands ensembles de données dans Python qui ne rentrent pas dans la mémoire? Comment gérer les grands ensembles de données dans Python qui ne rentrent pas dans la mémoire? Aug 14, 2025 pm 01:00 PM

Lors du traitement de grands ensembles de données qui dépassent la mémoire dans Python, ils ne peuvent pas être chargés en RAM en même temps. Au lieu de cela, des stratégies telles que le traitement de la chasse, le stockage du disque ou le streaming doivent être adoptées; Les fichiers CSV peuvent être lus en morceaux via les paramètres ChunkSize de Pandas et le bloc traité par bloc. La daste peut être utilisée pour réaliser la parallélisation et la planification des tâches similaires à la syntaxe Pandas pour prendre en charge les opérations de données de mémoire importantes. Écrivez les fonctions du générateur pour lire les fichiers texte ligne par ligne pour réduire l'utilisation de la mémoire. Utilisez le format de stockage en colonne de parquet combiné avec Pyarrow pour lire efficacement des colonnes ou des groupes de lignes spécifiques. Utilisez Memmap de Numpy pour mapper la mémoire de grands tableaux numériques pour accéder aux fragments de données à la demande, ou stocker des données dans des données légères telles que SQLite ou DuckDB.

Comment déboguer votre code python Comment déboguer votre code python Aug 13, 2025 am 12:18 AM

Useprint () instructionSOcheckVariableValuesAndexEcutionflow, ajoutlabelsandtypesforclarity, andRemoveThembeForComting; 2.Ushepylepylebugger (pdb) withreakpoint () topauseeexecution, inspectvariables, andstepthroughcodeinteractive; 3.HandleExceptionsusin;

Comment déboguer le code Python dans le texte sublime? Comment déboguer le code Python dans le texte sublime? Aug 14, 2025 pm 04:51 PM

UsuBrimeText’sBuildSystemTorunpyThonscriptsandcatcherRorSpressingCtrl baftersettingthecorrectBuildSystemorCreatacustomone.2.InsertStrategicprint () StatementScocheckVariableValues, Types, etxExecutionflow, usingLabelSAndrepr () Forclarit

Comment exécuter le code Python dans le texte sublime? Comment exécuter le code Python dans le texte sublime? Aug 16, 2025 am 04:58 AM

Assurez-vous que Python est installé et ajouté au chemin du système, exécutez Python - Version ou Python3 - Version Version via le terminal; 2. Enregistrez le fichier Python en tant qu'extension .py, comme Hello.py; 3. Créez un système de construction personnalisé dans sublimeText, les utilisateurs de Windows utilisent {"CMD": ["Python", "- U", "$ File"]}, les utilisateurs de macOS / Linux utilisent {"CMD": ["Python3

Comment déboguer un script python dans vscode Comment déboguer un script python dans vscode Aug 16, 2025 am 02:53 AM

Pour déboguer Python Scripts, vous devez d'abord installer l'extension Python et configurer l'interprète, puis créer un fichier lancé.json pour définir la configuration de débogage, puis définir un point d'arrêt dans le code et appuyez sur F5 pour démarrer le débogage. Le script sera interrompu au point d'arrêt, permettant de vérifier les variables et l'exécution étape par étape. Enfin, en vérifiant le problème en affichant la sortie de la console, en ajoutant des journaux ou en ajustant les paramètres, etc., pour s'assurer que le processus de débogage est simple et efficace après la correction de l'environnement.

Comment aplatir une liste imbriquée ou une liste de listes dans Python Comment aplatir une liste imbriquée ou une liste de listes dans Python Aug 12, 2025 am 09:49 AM

AplatinganestestListInpyThonConvertsalist avec les publistiquesIntoasingleflatlist et ThebestMethDependSonTherestDepthanddatasize.forone-levelnesting, uselistcomprehensionliny

See all articles