Maison > développement back-end > Tutoriel Python > Formatage des chaînes Python : % contre .format contre f-strings - Quelle méthode devriez-vous choisir ?

Formatage des chaînes Python : % contre .format contre f-strings - Quelle méthode devriez-vous choisir ?

DDD
Libérer: 2024-12-18 14:45:24
original
858 Les gens l'ont consulté

Python String Formatting:  % vs. .format vs. f-strings - Which Method Should You Choose?

Formatage de chaîne : % par rapport à .format par rapport aux littéraux de chaîne f

Question :

Il existe plusieurs méthodes pour formater les chaînes en Python : le formatage %, la méthode .format et les f-strings. Lequel est préférable et dans quelles circonstances ?

Réponse :

Comparaison des méthodes de formatage

Le code suivant démontre l'équivalent résultats de différentes méthodes de formatage :

name = "Alice"

"Hello %s" % name
"Hello {0}".format(name)
f"Hello {name}"

# Using named arguments:
"Hello %(kwarg)s" % {'kwarg': name}
"Hello {kwarg}".format(kwarg=name)
f"Hello {name}"
Copier après la connexion

Bien que toutes les méthodes produisent le même résultat, .format offre des avantages par rapport au formatage %. Par exemple, le formatage % nécessite des tuples pour plusieurs arguments, ce qui est fastidieux. .format prend également en charge les arguments nommés, ce qui améliore la lisibilité.

Performances d'exécution

Le formatage des chaînes a lieu lors de l'évaluation de l'expression. Par exemple, dans l'expression log.debug("some debug info: %s" % some_info), la chaîne est évaluée et transmise à log.debug().

Pour éviter les pénalités de performances d'exécution, il est recommandé de évitez le formatage des chaînes dans les sections critiques. Pensez à utiliser logger.("%s", str(some_info)) à la place, ce qui retarde l'évaluation de la chaîne jusqu'à ce que la décision du niveau de journalisation soit prise.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal