Heim >Backend-Entwicklung >Python-Tutorial >Wie funktioniert die Funktion „repr()' von Python und warum werden Zeichenfolgen in der Ausgabe in doppelte Anführungszeichen gesetzt?
Die repr( )-Funktion in Python verstehen
Pythons repr( )-Funktion gibt eine auswertbare Zeichenfolgendarstellung eines Objekts zurück. Dies bedeutet, dass die Zeichenfolge verwendet werden kann, um dasselbe Objekt mit eval( ) neu zu erstellen.
Warum doppelte Anführungszeichen bei der Verwendung von repr( ) für Zeichenfolgen?
Wenn repr( ) auf eine Zeichenfolge angewendet wird, wird die Zeichenfolge in doppelte Anführungszeichen gesetzt. Dies hilft, die Zeichenfolge von anderen Objekttypen wie Ganzzahlen oder Listen zu unterscheiden.
Warum eval("'foo'") 'foo' anstelle von x zurückgibt?
Wenn eval( ) mit einem String aufgerufen wird, interpretiert es den String als Python-Ausdruck. Wenn die Zeichenfolge einen gültigen Ausdruck enthält, wird dieser ausgewertet und das Ergebnis zurückgegeben. Im Fall von eval("'foo'") ist der Ausdruck ein String-Literal und ergibt daher denselben String. Andererseits ist x eine Variable, die auf die Zeichenfolge „foo“ verweist. Wenn eval( ) mit x aufgerufen wird, versucht es, x als Python-Ausdruck auszuwerten, was fehlschlägt, weil x kein gültiger Ausdruck ist.
Die __repr__()-Methode
repr( ) ruft tatsächlich die __repr__()-Methode des Objekts auf. Diese Methode gibt die auswertbare String-Darstellung des Objekts zurück.
str( ) vs. repr( )
Im Gegensatz zu repr( ) gibt str( ) einen String zurück Darstellung des zur Ausstellung geeigneten Objekts. Es schließt Zeichenfolgen nicht in doppelte Anführungszeichen ein und enthält keine Sonderzeichen, die darauf hinweisen, dass die Zeichenfolge ausgewertet werden soll.
Zusammenfassung:
Das obige ist der detaillierte Inhalt vonWie funktioniert die Funktion „repr()' von Python und warum werden Zeichenfolgen in der Ausgabe in doppelte Anführungszeichen gesetzt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!