Heim  >  Artikel  >  Backend-Entwicklung  >  Vergleichen Sie die Nutzungsunterschiede zwischen %r und %s in Python

Vergleichen Sie die Nutzungsunterschiede zwischen %r und %s in Python

巴扎黑
巴扎黑Original
2017-09-19 11:01:492094Durchsuche

%r verwendet die rper()-Methode zum Verarbeiten von Objekten

%s verwendet die str()-Methode zum Verarbeiten von Objekten

Die Funktion str() wird zum Konvertieren von Werten verwendet eine für den Menschen lesbare Form. Repr() wandelt es in eine für den Interpreter lesbare Form um (wenn es keine entsprechende Syntax gibt, tritt eine SyntaxError-Ausnahme auf. Wenn ein Objekt keine für den Menschen lesbare Interpretationsform hat, wird str () gibt das Äquivalent des repr()-Werts zurück. Viele Typen, wie zum Beispiel numerische Werte oder Strukturen wie verknüpfte Listen und Wörterbücher, verfügen für jede Funktion über eine einheitliche Interpretationsmethode.

In einigen Fällen sind die Ergebnisse der beiden Prozesse gleich, beispielsweise bei der Verarbeitung von int-Objekten.

Beispiel 1:

print "I am %d years old." % 22
print "I am %s years old." % 22
print "I am %r years old." % 22

Rückgabeergebnis:

I am 22 years old.
I am 22 years old.
I am 22 years old.

In anderen Fällen sind die beiden unterschiedlich

Beispiel 2:

text = "I am %d years old." % 22
print "I said: %s." % text
print "I said: %r." % text

Rückgabeergebnis:

I said: I am 22 years old..
I said: 'I am 22 years old.'.   #%r 给字符串加了单引号

Sehen Sie sich eine andere Situation an

Beispiel 3:

import datetime
d = datetime.date.today()
print "%s" % d
print "%r" % d

Rückgabeergebnis:

2017-08-16
datetime.date(2017, 8, 16)

Es ist ersichtlich, dass %r das von ihm dargestellte Objekt beim Drucken reproduzieren kann (rper() erstellt das von ihm dargestellte Objekt eindeutig neu)

Das obige ist der detaillierte Inhalt vonVergleichen Sie die Nutzungsunterschiede zwischen %r und %s in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn