datei auslesen und in einer dictionary einfügen.
@Evilsadness: Diese Beschreibung macht keinen Sinn. Entweder sind die Felder mit ':' getrennt oder mit ','. Sollte das was Du da im Code-Block gezeigt hast, also wahrscheinlich das Ergebnis von ``str(vokabeln)``, in der Datei stehen, dann ist das keine CSV-Datei. Und so etwas solltest Du auch nicht machen, denn die Zeichenkettendarstellung von Wörterbüchern ist nicht unbedingt zum Speichern gedacht, weil es mit einlesen und einfachem aufteilen an ':' und ',' nicht getan ist. Wenn Du so etwas ähnliches Speichern und auch wieder laden möchtest, dann verwende das `json`-Modul. Aber schreibe so etwas nicht selbst — insbesondere nicht als Anfänger.
Zumindest bei mir kommt als erster Link bei der Suche: http://www.python-kurs.eu/dictionaries.php
Dort wird beschrieben, wie man über ein Dictionary iteriert:
Alternativ kannst du auch
verwenden.
Mal als Template:
Dort wird beschrieben, wie man über ein Dictionary iteriert:
Code: Alles auswählen
for key in d:
print d[key]
Code: Alles auswählen
for key, value in d.items():
print key, value
Mal als Template:
Code: Alles auswählen
def make_line(key, value):
'''
>>> make_line('world', 'World')
'world,World\n'
'''
return #your job
out = open("vokabeln - Kopie.csv", "w")
for key, value in words.items():
out.write(make_line(key, value))
out.close()
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
-
- User
- Beiträge: 29
- Registriert: Freitag 2. November 2012, 13:11
die beispiele wie man iteriert habe ich schon so angewendet. wusste jedoch nicht, dass man 2 werte gleichzeitig in einer for-schleide durchlaufen lassen kann:
Habs jetzt fertig bekommen!!
Dank dieser Schleife ;D
Für vielen ist alles selbstverständlich, jedoch befasse ich mit mit Python erst seit 1 Monat parallel zu XML und Java.
So kommen kleinste Sachen wie nichts vor, doch für mich ist das nicht so selbstverständlich.
Auf jeden Fall !!! Vielen dank !!!
Code: Alles auswählen
for key, value in d.items():
print key, value
Dank dieser Schleife ;D
Für vielen ist alles selbstverständlich, jedoch befasse ich mit mit Python erst seit 1 Monat parallel zu XML und Java.
So kommen kleinste Sachen wie nichts vor, doch für mich ist das nicht so selbstverständlich.
Auf jeden Fall !!! Vielen dank !!!
Einmal fängt man immer an.
Wenn du magst, kannst du ja mal deinen Code zeigen, um Feedback zu bekommen, was man da besser machen könnte. Das ist meistens sehr lehrreich.
Edit: Zu der Schleife
Was ``items`` wirklich zurückgibt ist eine Liste von Tupeln. Zudem erlaubt es Python bei Collections wie Listen, Tupeln aber auch Mengen diese auszupacken und direkt Variablen zuzuweisen. Das ist vor allem bei Tupeln sinnvoll, klappt aber wie gesagt bei allen Typen, die iterierbar sind.
Wenn du magst, kannst du ja mal deinen Code zeigen, um Feedback zu bekommen, was man da besser machen könnte. Das ist meistens sehr lehrreich.
Edit: Zu der Schleife
Was ``items`` wirklich zurückgibt ist eine Liste von Tupeln. Zudem erlaubt es Python bei Collections wie Listen, Tupeln aber auch Mengen diese auszupacken und direkt Variablen zuzuweisen. Das ist vor allem bei Tupeln sinnvoll, klappt aber wie gesagt bei allen Typen, die iterierbar sind.
Code: Alles auswählen
x = ('world', 'Welt')
key, value = ('world', 'Welt')
key, value = x
a,b,c = {1, 2, 3} #no order
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
Und genau das willst du doch eigentlich nicht. Du möchtest die einzelnen Einträge im Dictionary ja schon gemeinsam haben um sie gemeinsam wegschreiben zu können. Du hast keys gefunden, du hast values gefunden - items hast du übersehen.Evilsadness hat geschrieben:was ich bisher versucht habe war, die key und value zutrennen:
Code: Alles auswählen
for key, value in vokabeln.iteritems():
print key, value
Willkommen auf Seite 2/me hat geschrieben:Und genau das willst du doch eigentlich nicht. Du möchtest die einzelnen Einträge im Dictionary ja schon gemeinsam haben um sie gemeinsam wegschreiben zu können. Du hast keys gefunden, du hast values gefunden - items hast du übersehen.Evilsadness hat geschrieben:was ich bisher versucht habe war, die key und value zutrennen:Da items eine zusätzlich eine Liste aufbaut, die hier gar nicht benötigt wird, kann man es dann noch prima durch iteritems ersetzen.Code: Alles auswählen
for key, value in vokabeln.iteritems(): print key, value
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]