Heim >Backend-Entwicklung >Python-Tutorial >Verfügt Python über eine String-Interpolation wie Ruby?

Verfügt Python über eine String-Interpolation wie Ruby?

Susan Sarandon
Susan SarandonOriginal
2024-11-30 04:27:15969Durchsuche

Does Python Have String Interpolation Like Ruby's?

Bietet Python eine mit Ruby vergleichbare String-Interpolation?

In Ruby ermöglicht die String-Interpolation das Einfügen von Ausdrücken in Strings und verbessert so die Lesbarkeit des Codes. Ein Beispiel für Ruby-String-Interpolation:

name = "Spongebob Squarepants"
puts "Who lives in a Pineapple under the sea? \n#{name}."

Für Python-Entwickler mag die entsprechende String-Verkettung ausführlich erscheinen.

Python-String-Interpolation in Python 3.6 und höher

Glücklicherweise führt Python 3.6 eine literale String-Interpolation ein, die der von Ruby ähnelt. In Python 3.6 ermöglichen „F-Strings“ die Einbeziehung von Ausdrücken:

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

Alternativen vor Python 3.6

Berücksichtigen Sie vor Python 3.6 diese Optionen:

  • % Operator: Verwenden Sie % Operator für die String-Interpolation. Der erste Operand ist die zu interpolierende Zeichenfolge und der zweite kann eine „Zuordnung“ enthalten, die Feldnamen Werten zuordnet. Eine Zuordnung kann mit locals() erstellt werden.
name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? %(name)s." % locals())
  • .format()-Methode: Verwenden Sie die .format()-Methode, um Zeichenfolgen zu interpolieren:
name = "Spongebob Squarepants"
print("Who lives in a Pineapple under the sea? {name!s}.".format(**locals()))
  • string.Template-Klasse: Benutzen Sie die string.Template-Klasse für String-Interpolation:
tmpl = string.Template("Who lives in a Pineapple under the sea? $name.")
print(tmpl.substitute(name="Spongebob Squarepants"))

Das obige ist der detaillierte Inhalt vonVerfügt Python über eine String-Interpolation wie Ruby?. 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