Maison > développement back-end > Tutoriel Python > Comment la fonction `repr()` de Python crée-t-elle une représentation sous forme de chaîne évaluable d'un objet ?

Comment la fonction `repr()` de Python crée-t-elle une représentation sous forme de chaîne évaluable d'un objet ?

Barbara Streisand
Libérer: 2024-11-29 15:19:12
original
565 Les gens l'ont consulté

How Does Python's `repr()` Function Create an Evaluatable String Representation of an Object?

Comprendre la fonction repr( ) en Python

La fonction repr( ) en Python fournit une représentation sous forme de chaîne évaluable d'un objet, ce qui signifie qu'il peut être évalué pour recréer l'objet original.

Question 1 : Pourquoi les guillemets doubles dans repr(x)?

Lorsque repr( ) est appelée sur une chaîne, elle met sa représentation sous forme de chaîne entre guillemets doubles. En effet, repr() vise à générer une représentation qui peut être évaluée pour produire la chaîne originale. Les guillemets doubles indiquent que la représentation est un objet chaîne.

Question 2 : Pourquoi 'foo' au lieu de x avec eval("'foo'") ?

Évaluer une chaîne entre guillemets simples, telle que eval("'foo'"), la traite comme une chaîne littérale et renvoie la chaîne elle-même, 'foo'. Ici, l'évaluation n'implique pas la variable x.

Méthode magique __repr__()

En interne, repr() appelle la méthode magique __repr__() de l'objet. Cette méthode renvoie une représentation sous forme de chaîne de l'objet qui peut être utilisée pour le reconstruire.

Représentation sous forme de chaîne (str())

Contrairement à repr( ), la La fonction str() renvoie simplement la représentation sous forme de chaîne de l'objet, sans les guillemets doubles qui l'entourent. Pour les chaînes, cela donne la chaîne d'origine, car elles sont déjà au format chaîne.

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal