Formatage en sortie en Python: remplacement de plusieurs% s par la même variable
Je suis d'essayer de maintenir/mettre à jour/réécriture/corriger un peu de Python qui ressemble un peu à ceci:
variable = """My name is %s and it has been %s since I was born.
My parents decided to call me %s because they thought %s was a nice name.
%s is the same as %s.""" % (name, name, name, name, name, name)
Il y a peu de fragments de code qui ressemble à ceci partout dans le script, et je me demandais si il y a plus simple (plus Pythonic?) la façon d'écrire ce code. J'ai trouvé un exemple de ce qui remplace la même variable environ 30 fois, et il se sent juste laid.
Est le seul moyen (à mon avis) de la laideur à la découper en lots de petits bouts?
variable = """My name is %s and it has been %s since I was born.""" % (name, name)
variable += """My parents decided to call me %s because they thought %s was a nice name.""" % (name, name)
variable += """%s is the same as %s.""" % (name, name)
source d'informationauteur alexmuller
Vous devez vous connecter pour publier un commentaire.
Utiliser un dictionnaire au lieu.
Ou
format
avec une numérotation explicite.Bien, ou
format
avec des paramètres nommés.Utiliser le nouveau
string.format
:Vous pouvez utiliser des paramètres nommés. Voir les exemples ici
Utiliser la mise en forme des chaînes:
Le texte à l'intérieur de la {} peut être un descripteur ou une valeur d'index.
Un autre fantaisie astuce consiste à utiliser un dictionnaire pour définir plusieurs variables en combinaison avec l'opérateur**.
ont un coup d'oeil à Modèle De Chaînes De Caractères