Frustriert hier so helfen sehr willkommen.Konstruieren eines verschachtelten Wörterbuch mit dict Verständnis
ich eine Datei haben, data_fields
lname,fname,age,UID
macpherson,tom,16,219
goldman,tim,13,316
smith,jon,11,414
doe,jon,59,512
ein Wörterbuch auf der 'UID' Wert wie unten
import csv
with open(data_fields) as readme:
reader = csv.reader(readme)
headers = reader.next()
UIDindex = headers.index('UID')
people = dict()
for person in reader:
people[person[UIDindex]] = {k:v for k,v in zip(headers,person) if not k=='UID'}
import pprint
pprint.pprint(people)
{'219': {'age': '16', 'fname': 'tom', 'lname': 'macpherson'},
'316': {'age': '13', 'fname': 'tim', 'lname': 'goldman'},
'414': {'age': '11', 'fname': 'jon', 'lname': 'smith'},
'512': {'age': '59', 'fname': 'jon', 'lname': 'doe'}}
verkeilt mache Welche OK ~ ish funktioniert. Aber im Interesse der nicht zu schaffen die Menschen dict() vorne Ich habe zusammen eine Form von dict Verständnis zu setzen versuchen, dass die ‚für Person in Leser-Schleife‘ umfassen würde und mir erlauben,
return <elusive dict comprehension yielding same dict as above>
zu tun
In diesem Bestreben habe ich versagt, rund. und habe eine frustrierende Zeit damit verbracht. Zeit, die Experten hier zu fragen! Kann jemand mit diesem flüchtigen Verständnis helfen? Ist das mit Python möglich (hier läuft 2.7.6).
dank