Heim >Backend-Entwicklung >Python-Tutorial >Wie hat Python Ruby bei der String-Interpolation eingeholt?

Wie hat Python Ruby bei der String-Interpolation eingeholt?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-19 19:50:03563Durchsuche

How did Python catch up to Ruby in String Interpolation?

Pythons Ansatz zur String-Interpolation

Während Ruby eine praktische Möglichkeit bietet, String-Interpolation durchzuführen, fehlte Python zunächst ein ähnlicher Mechanismus. In Python 3.6 wurde jedoch die Literal-String-Interpolation eingeführt und damit an Rubys Ansatz angepasst.

Zum Beispiel:

name = "Spongebob Squarepants"
print(f"Who lives in a Pineapple under the sea? {name}.")

Optionen vor Python 3.6

Vor Python 3.6 bot Python Alternativen für die String-Interpolation:

  • % Operator:Verwendung eines Wörterbuchs, das Feldnamen Werten zuordnet, ähnlich dem Hash von Ruby.
name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? %(name)s." % locals())
  • .format() Methode:Ersetzen von Werten in Platzhalter.
name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? {name!s}.".format(**locals()))
  • Zeichenfolge. Vorlagenklasse:Verwendung von Vorlagen und Platzhaltern zur Ersetzung.
tmpl = string.Template("Who lives in a Pineapple under the sea? $name.")
print(tmpl.substitute(name="Spongebob Squarepants"))

Zusammenfassend lässt sich sagen, dass Python 3.6 eine prägnante und Ruby-ähnliche Methode zur String-Interpolation bietet, während frühere Python-Versionen verschiedene alternative Ansätze bieten um ähnliche Ergebnisse zu erzielen.

Das obige ist der detaillierte Inhalt vonWie hat Python Ruby bei der String-Interpolation eingeholt?. 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