Comment puis-je échapper aux signes de pourcentage dans le formatage de chaîne Python pour éviter « TypeError » ?

Patricia Arquette
Libérer: 2024-11-27 07:02:13
original
195 Les gens l'ont consulté

How Can I Escape Percent Signs in Python String Formatting to Avoid `TypeError`?

Échapper sélectivement les caractères en pourcentage dans les chaînes Python

Dans la programmation Python, lors de la concaténation de chaînes avec des espaces réservés de formatage (%s, %d, etc.), il peut être souhaitable pour empêcher sélectivement certains caractères, tels que les signes de pourcentage (%), d'être interprétés comme des directives de formatage. Cela peut aider à éviter toute ambiguïté et à garantir un formatage de chaîne approprié.

Considérons l'exemple suivant :

test = "have it break."
selectiveEscape = "Print percent % in sentence and not %s" % test
Copier après la connexion

Dans ce cas, l'objectif est d'imprimer une chaîne qui affiche un signe de pourcentage suivi du signe valeur de test, sans que le signe pour cent soit interprété comme une directive de formatage. Cependant, le code actuel génère une TypeError car l'espace réservé %s attend un nombre, pas une chaîne.

Pour échapper sélectivement au signe de pourcentage, nous pouvons utiliser la notation du signe de pourcentage double (%%) :

selectiveEscape = "Print percent %% in sentence and not %s" % test
Copier après la connexion

En doublant le signe de pourcentage, nous l'empêchons d'être interprété comme une directive de formatage et le traitons efficacement comme un caractère littéral dans la chaîne. Le code imprimera désormais correctement la sortie souhaitée :

Print percent % in sentence and not have it break.
Copier après la connexion

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal