Ich verstehe nicht, was %s
und %d
tun und wie sie funktionieren.
Sie werden zur Formatierung von Zeichenketten verwendet. %s" dient als Platzhalter für eine Zeichenkette, während %d" als Platzhalter für eine Zahl dient. Ihre zugehörigen Werte werden über ein Tupel mit dem Operator "%" übergeben.
name = 'marcog'
number = 42
print '%s %d' % (name, number)
wird marcog 42
ausgeben. Beachten Sie, dass name eine Zeichenkette (%s) und number eine ganze Zahl (%d für Dezimalzahlen) ist.
Siehe https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting für Details.
In Python 3 würde das Beispiel lauten:
print('%s %d' % (name, number))
%s" wird als Platzhalter für Zeichenkettenwerte verwendet, die Sie in eine formatierte Zeichenkette einfügen möchten.
%d
wird als Platzhalter für numerische oder dezimale Werte verwendet.
Zum Beispiel (für Python 3)
print ('%s is %d years old' % ('Joe', 42))
Würde ausgeben
Joe is 42 years old
Sie sind Formatspezifizierer. Sie werden verwendet, wenn Sie den Wert Ihrer Python-Ausdrücke in Zeichenketten einfügen wollen, wobei ein bestimmtes Format erzwungen wird.
Siehe Dive into Python für eine relativ detaillierte Einführung.