Kurze Fragen - Kurze Antwort

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Seeker
User
Beiträge: 70
Registriert: Mittwoch 16. September 2009, 19:52

Hi!
Ich habe diesen thread aufgemacht, da die Frage eigentlich kein eigenes Topic verdient...

Meine kurze Frage:
Wie nennt man den Einsatz des "%" Zeichens z.B. beim print-Befehl?
Also z.B:
a = apple
print "%s" %a

Ich suche eine Liste mit den verschiedenen specifications, also z.B. %s oder %d.
Dummerweise ignorieren Suchmaschinen solch kurze Ausdrücke. =/

lg, Seeker

PS: @admin&mods: Vielleicht könnte man einen 'Dauerthread' öffnen für genau solche Fragen? Nur ein Gedanke :)
Zuletzt geändert von Seeker am Sonntag 27. September 2009, 20:13, insgesamt 1-mal geändert.
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Modulo.
Ueberraschung :) Weil das '%' doppeldeutig ist, gibt es ab 2.6 auch die `format` Methode.

http://docs.python.org/library/stdtypes ... formatting

format:
http://docs.python.org/library/string.h ... matstrings
Zuletzt geändert von cofi am Sonntag 27. September 2009, 22:04, insgesamt 2-mal geändert.
Seeker
User
Beiträge: 70
Registriert: Mittwoch 16. September 2009, 19:52

super, danke =)
Also wäre .format eigentlich vorzuziehen?
BlackJack

@Seeker: Würde ich nicht sagen, aber ich setze ja auch noch hauptsächlich 2.5 ein. :-)

Das ``%`` ist übrigens nicht doppeldeutig, das ist ganz eindeutig der ``%``-Operator und wie bei jedem anderen Operator auch, hängt die Bedeutung von den Typen ab, auf die er angewendet wird. Und er hat auch nichts mit ``print`` zu tun. Wenn Du wissen willst was ein Operator mit bestimmten Typen macht, solltest Du schauen was links davon steht und dann bei dem Typ in der Dokumentation nachschlagen.
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

BlackJack hat geschrieben:Das ``%`` ist übrigens nicht doppeldeutig, das ist ganz eindeutig der ``%``-Operator und wie bei jedem anderen Operator auch, hängt die Bedeutung von den Typen ab, auf die er angewendet wird. Und er hat auch nichts mit ``print`` zu tun. Wenn Du wissen willst was ein Operator mit bestimmten Typen macht, solltest Du schauen was links davon steht und dann bei dem Typ in der Dokumentation nachschlagen.
Das verstehe ich jetzt nicht, es sei denn, die Betonung liegt auf "Operator". Die Verwendung des %-Zeichens kommt auf jeden Fall in zwei unterschiedlichen Kontexten vor und hat dort auch verschiedene Bedeutungen. In dem Kontext, den der OP nennt, würde ich das %-Zeichen als "einleitende Markierung eines Formatspezifierers" bezeichnen, da ist es natürlich kein "Operator". Das %-Zeichen als Operator ist in der Tat eindeutig - darauf wurde ja schon eingegangen.
Seeker
User
Beiträge: 70
Registriert: Mittwoch 16. September 2009, 19:52

Und er hat auch nichts mit ``print`` zu tun. Wenn Du wissen willst was ein Operator mit bestimmten Typen macht, solltest Du schauen was links davon steht und dann bei dem Typ in der Dokumentation nachschlagen.
Das ist mir schon bewusst... deshalb habe ich ja "z.B." geschrieben. :)
Antworten