[python-users] Liste / Dictionary nach vorhandenen Schlüsseln durchsuchen und erweitern

Daniel Hepper daniel.hepper at gmail.com
Mo Feb 14 23:03:00 CET 2011


Alternativ lässt sich das auch mit einem defaultdict [1] (ab Python 2.5) lösen:

from collections import defaultdict

d = defaultdict(set)
for key, val in ldap:
    d[k].add(v)

Grüße,
Daniel

[1] http://docs.python.org/library/collections.html#collections.defaultdict

Am 14.02.2011 um 22:33 schrieb Lukas Lueg <lukas.lueg at googlemail.com>:

> A, B, C usw. als keys in einem dict, als value dahinter ein set.
> 
> z.B.
> 
> d = dict()
> for key, val in ldap:
>    try:
>        entry = d[key]
>    except KeyError:
>        entry = d[key] = set()
>    entry.add(val)
> 
> 
> Am 14. Februar 2011 22:28 schrieb Stefan Pampel <stefan.pampel at polyformal.de>:
>> Hallo Liste
>> 
>> ich arbeite an folgender Fragestellung und suche noch nach einem Denkanstoß.
>> 
>> Das Ergebnis einer Abfrage (LDAP) lasse ich durch eine for Schleife
>> laufen um einzelne Datensätze des Ergebnisses in eine Liste zu
>> überführen, Jedes Element in der Liste ist dann ein Dictionary mit einem
>> Datensatz.
>> 
>> Heruntergebrochen könnten die ankommenden Daten so aussehen:
>> 
>> A = 1
>> B = 1
>> A = 3
>> C = 1
>> C = 2
>> 
>> usw. Ist ein Ergebnis z.B. A = 2 möchte ich das später aus einem
>> vorhandenen A = 1 ein A = 1, 2, usw. wird. Kurz: A soll nur einmal
>> vorkommen und bei vorhanden sein entsprechend erweitert werden.
>> 
>> Bei jedem Datensatz die langsam anwachsende Liste mit for nach einem
>> vorhandenen Schlüssel zu durchsuchen scheint nicht zielführend.
>> 
>> Hat jemand eine Anregung?
>> 
>> Viele Grüße
>> 
>> Stefan Pampel
>> 
>> 
>> --
>> / polyformal System- und Formarbeit /
>> | Kaesenstraße 8                   /
>> | 50677 Köln - Germany            /
>> | phone: +49 221 3103 122        /
>> | fax:   +49 221 9311 9223      /
>> | http://www.polyformal.de     /
>> |_____________________________/
>> 
>> GPG KEY: 11678845
>> ________________________________________
>> Diese Mail erhalten Sie ueber die Mailingliste python-users der Universitaet zu Koeln
>> Nachrichten an: python-users at uni-koeln.de
>> Abonnement und Benutzereinstellungen: https://lists.uni-koeln.de/mailman/listinfo/python-users
>> Listenarchiv: https://lists.uni-koeln.de/pipermail/python-users/
>> 
>> pyCologne Homepage: http://pycologne.de/
>> 
> ________________________________________
> Diese Mail erhalten Sie ueber die Mailingliste python-users der Universitaet zu Koeln
> Nachrichten an: python-users at uni-koeln.de
> Abonnement und Benutzereinstellungen: https://lists.uni-koeln.de/mailman/listinfo/python-users
> Listenarchiv: https://lists.uni-koeln.de/pipermail/python-users/
> 
> pyCologne Homepage: http://pycologne.de/



Mehr Informationen über die Mailingliste python-users