Ich habe ein kleines Skript zum Rechnerprozentsatz gemacht; Ich möchte jedoch das '%' in die gedruckte Nachricht einfügen ...
Habe das am Anfang probiert - funktionierte nicht ...
oFile.write ("Prozent:% s%"\n "% Prozent)
Ich habe dann "Percentage: %s"%"\n" % percent"
probiert, was nicht funktioniert hat.
Ich möchte, dass die Ausgabe wie folgt lautet: Prozentsatz: x%
Ich erhalte ständig "TypeError: nicht alle während der String-Formatierung konvertierten Argumente".
Um das %
-Zeichen auszudrucken, müssen Sie es mit einem anderen %
-Zeichen "escape" machen:
percent = 12
print "Percentage: %s %%\n" % percent # Note the double % sign
>>> Percentage: 12 %
Oder verwenden Sie die format()
-Funktion, die eleganter ist.
percent = 12
print "Percentage: {}%".format(percent)
4 Jahre später bearbeiten
In Python3x erfordert print()
eine Klammer.
percent = 12
print ("Percentage: {}%".format(percent))
Das Format ist eleganter, aber das Modulo-Zeichen scheint schneller zu sein!
http://inre.dundeemt.com/2016-01-13/string-modulo-vs-format-fight/ - zeigt, dass Modulo ~ 30% schneller ist!