Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung der Formatierungsmethoden für Strings in Python

Zusammenfassung der Formatierungsmethoden für Strings in Python

高洛峰
高洛峰Original
2017-03-06 13:37:331286Durchsuche

Alte Methode

Vor Python 2.6 war die Verwendung von Formatzeichenfolgen relativ einfach, obwohl die Anzahl der Parameter, die sie empfangen konnte, begrenzt war. Diese Methoden funktionieren weiterhin in Python 3.3, es gibt jedoch implizite Warnungen, dass diese Methoden vollständig auslaufen werden, und es gibt noch keinen klaren Zeitplan.

Gleitkommazahl formatieren:

pi = 3.14159
print(" pi = %1.2f ", % pi)


Mehrere Ersatzwerte:

s1 = "cats"
s2 = "dogs"
s3 = " %s and %s living together" % (s1, s2)

Nicht genügend Argumente:

Bei der alten Formatierungsmethode erhielt ich oft die Meldung „TypeError: nicht genügend Argumente für Formatierungszeichenfolge“, weil ich die Substitutionsvariablen falsch gezählt habe. Das kann man leicht übersehen Variablen beim Schreiben von Code wie dem folgenden.

set = (%s, %s, %s, %s, %s, %s, %s, %s) " % (a,b,c,d,e,f,g,h,i)

Für die neuen Python-Formatzeichenfolgen können Sie nummerierte Argumente verwenden, sodass Sie nicht zählen müssen, wie viele Argumente vorhanden sind.

set = set = " ({0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}) ".format(a,b,c,d,e,f,g)

Python 2.x basierend auf Wörterbuchzeichenfolgenformatierung

"%(n)d %(x)s" %{"n":1, "x":"spam"}
reply = """
Greetings...
Hello %(name)s!
Your age squared is %(age)s
"""
values = {'name':'Bob', 'age':40}
print rely % values


Python 3.x-Format-Methodenformatierung

template = '{0},{1} and {2}'
template.format('spam','ham','eggs')

template = '{motto}, {pork} and {food}'
template.format(motto='spam', pork='ham', food='eggs')

template = '{motto}, {0} and {food}'
template.format('ham', motto='spam', food='eggs')

'{motto}, {0} and {food}'.format(42, motto=3.14, food=[1,2,3])


Mehr für a Zusammenfassung der String-Formatierungsmethoden in Python. Weitere Informationen zu verwandten Artikeln finden Sie auf der chinesischen PHP-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