Maison >développement back-end >Tutoriel Python >Python a-t-il une interpolation de chaînes comme celle de Ruby ?
Python offre-t-il une interpolation de chaîne comparable à celle de Ruby ?
Dans Ruby, l'interpolation de chaîne permet l'insertion d'expressions dans des chaînes, améliorant ainsi la lisibilité du code. Un exemple d'interpolation de chaîne Ruby :
name = "Spongebob Squarepants" puts "Who lives in a Pineapple under the sea? \n#{name}."
Pour les développeurs Python, la concaténation de chaîne équivalente peut sembler verbeuse.
Interpolation de chaîne Python dans Python 3.6 et versions ultérieures
Heureusement, Python 3.6 introduit une interpolation de chaîne littérale similaire à celle de Ruby. Dans Python 3.6, les "f-strings" permettent l'inclusion d'expressions :
name = "Spongebob Squarepants" print(f"Who lives in a Pineapple under the sea? {name}.")
Alternatives pré-Python 3.6
Avant Python 3.6, considérez ces options :
name = "Spongebob Squarepants" print("Who lives in a Pineapple under the sea? %(name)s." % locals())
name = "Spongebob Squarepants" print("Who lives in a Pineapple under the sea? {name!s}.".format(**locals()))
tmpl = string.Template("Who lives in a Pineapple under the sea? $name.") print(tmpl.substitute(name="Spongebob Squarepants"))
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!