Lors de la mise en forme d'une chaîne, ma chaîne peut contenir un modulo "%"
que je ne souhaite pas convertir. Je peux échapper la chaîne et changer chaque "%"
en "%%"
comme une solution de contournement.Formatage de chaînes Python lorsque la chaîne contient "% s" sans s'échapper
par exemple,
'Day old bread, 50%% sale %s' % 'today!'
sortie:
'Day old bread, 50% sale today'
Mais y at-il des alternatives à échapper? J'espérais que l'utilisation d'un dict permettrait à Python d'ignorer toutes les conversions sans mot-clé.
par exemple,
'Day old bread, 50% sale %(when)s' % {'when': 'today'}
mais Python voit toujours le premier modulo %
et donne:
TypeError: not enough arguments for format string
échapper% n'est pas une solution de contournement, c'est une façon documentée et officielle de le faire. – SilentGhost