Ho il seguente codiceCome posso sfuggire in modo selettivo percentuale (%) nelle stringhe Python?
test = "have it break."
selectiveEscape = "Print percent % in sentence and not %s" % test
print(selectiveEscape)
desidero ottenere il risultato:
Print percent % in sentence and not have it break.
Cosa accade realmente:
selectiveEscape = "Use percent % in sentence and not %s" % test
TypeError: %d format: a number is required, not str
@KarlKnechtel: Ma ho incontrato personalmente il problema quando il modello di formattazione è stato letto da un file. Se non hai il controllo su cosa c'è dentro il file, allora la domanda è legittima. – pepr
Se il modello di formattazione si trova in un file, quindi ottenere il modello corretto, inclusa la corretta escaping dei simboli '%', è responsabilità del creatore del file. –
Perché non è '\%'? Questa è stata la mia ipotesi, sono sorpreso di trovare '%%' invece - sembra piuttosto controintuitivo. – Demis