Seite 1 von 1
Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 00:18
von martinjo
Hallo,
mal ne ganz blöde Frage, wie kann ich den bei einem Dict Schlüssel und Wert gleichzeitig ausgeben, aber eben nicht auf einen Schlag sondern zeilenweise? :K
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 00:23
von martinjo
Klar, natürlich nur online stellen und sofort schnallt man es
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 00:25
von BlackJack
@martinjo: Schau Dir mal die `iteritems()`-Methode auf `dict`\s an.
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 06:58
von mutetella
Mir stellt sich gerade die Frage, aus welchem Grund beim "einfachen" iterieren über ein dict "nur" die keys ausgegeben werden? Warum haben die Python-Leute das wohl so gemacht?
mutetella
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 07:34
von BlackJack
@mutetella: Vielleicht damit das symmetrisch zum ``in``-Operator ist, also man damit nicht gegen andere Objekte testet als die Iteration über das Objekt ergibt. Denn in der Regel ist ``a in b`` äquivalent zu ``any(a == x for x in b)``.
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 09:47
von noisefloor
Hallo,
@mutella: Weil Schlüssel der Schlüssel sind und Wert "nichts" (bzw. austauschbar)? KV-Stores handhaben das z.B. auch so. Wie ist das denn in anderen Programmiersprachen?
Gruß, noisefloor
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 11:30
von lunar
@noisefloor In der Standardbibliothek von C++, C# und Java iteriert man über Schlüssel-Wert-Paare.
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 12:22
von BlackJack
@lunar: Sind `Map`\s in Java überhaupt „iterable”? Ich dachte nicht und damit muss sich der Programmierer explizit entscheiden worüber er mit einer ``for``-Schleife iterieren möchte.
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 18:17
von Hyperion
BlackJack hat geschrieben:@lunar: Sind `Map`\s in Java überhaupt „iterable”?
Offenbar nicht:
Link. Will man über beides iterieren, muss man sich wohl per ``entrySet``-Methode eine Menge von Paaren holen.
Re: Python dictionary schlüssel + wert ausgeben
Verfasst: Mittwoch 17. Oktober 2012, 20:51
von BlackJack
Oder über `keySet()` oder über `values()`. Bei Java wird es also dem Programmierer überlassen worüber er iterieren möchte.