Zufallsgenerator in Dictionarys

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
badewanne
User
Beiträge: 7
Registriert: Dienstag 3. Mai 2005, 20:36
Wohnort: Berlin
Kontaktdaten:

Dienstag 3. Mai 2005, 20:43

Hallo
Ich habe mal wieder ein kleines Problem:

ICh möchte ein Programm schreiben, das als Vokabeltrainer dient. Als erstes habe ich aus einer Datei, in der die Vokabeln mit : getrennt stehen in ein Dictionary eingelesen. Funktioniert bis Hier! SO weiter

-> Wie kann ich die einzelnen Variablen eines Eintragspaar ansprecken deutsch : englisch
-> Wie kann ich einen beliebigen Eintrag des Dic. aufrufen (bei listen wär´s choice(list)!)

Kann mir jemand Helfen??

Hier noch der Programmcode von meinem Anfang:

Code: Alles auswählen

# -*- coding: cp1252 -*- 
from string import * 
"from random import *" 
"from time import *" 

dici = {} 
deutsch =
filename = "F:/python/voc.txt" 
file = open(filename,"r" 
for line in file.readlines(): 
= splitfields(line, ':')[:2] 
deutsch.append(deu) 
dici= engl 
Struktur des Textdokuments voc.txt:

Buchstabe : the letter
Jahr : year
Maus : mouse
Tastatur : keyboard
praktisch : handy
Ausrutscher : slip
Knoten : knot
Made : maggot
Streichholz : match
laufen : walk

Edit (Leonidas): Code in Python-Tags gesetzt.
Edit (Leonidas): Umfrage gelöscht, da sie nichts mit dem Thema zu tun hatte.
-> www.repke.de <-
badewanne
User
Beiträge: 7
Registriert: Dienstag 3. Mai 2005, 20:36
Wohnort: Berlin
Kontaktdaten:

Dienstag 3. Mai 2005, 20:46

Sorry, der Code ist mir verrutscht(Fehler beim reinkopieren!)
Richtig:

Code: Alles auswählen

# -*- coding: cp1252 -*-
from string import * 
dici = {}
deutsch = []
filename = "F:/python/voc.txt"
file = open(filename,"r")
for line in file.readlines():
    [deu, engl] = splitfields(line, ':')[:2]
    deutsch.append(deu)
    dici[deu] = engl
Edit (Leonidas): Code in Python-Tags gesetzt.
-> www.repke.de <-
XT@ngel
User
Beiträge: 256
Registriert: Dienstag 6. August 2002, 14:36
Kontaktdaten:

Dienstag 3. Mai 2005, 22:12

Hallo,
wieso hast Du dem Beitrag eine Umfrage hinzugefügt die nichts mit deiner Frage zu tun hat?

MfG
Andreas
BlackJack

Dienstag 3. Mai 2005, 22:52

Na Du hast doch die deutschen Worte in einer Liste und kannst damit ein Zufälliges auswählen und Dir die Übersetzung dann aus dem Dictionary holen, oder?
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Mittwoch 4. Mai 2005, 18:02

BlackJack hat geschrieben:Na Du hast doch die deutschen Worte in einer Liste und kannst damit ein Zufälliges auswählen und Dir die Übersetzung dann aus dem Dictionary holen, oder?
Und das kannst du mit random.choice(dict.keys()).
My god, it's full of CARs! | Leonidasvoice vs Modvoice
badewanne
User
Beiträge: 7
Registriert: Dienstag 3. Mai 2005, 20:36
Wohnort: Berlin
Kontaktdaten:

Freitag 6. Mai 2005, 20:54

Leonidas hat geschrieben: Und das kannst du mit random.choice(dict.keys()).
Danke!!! Das knackts! ne weile noch und dann ist es Fertig (hab noch genug anderes Zeugs um die Ohren!)

Wenn es fertig ist stelle ich es auf www.repke.de und downloads rein! erstmal ne kleine billigversion und dann eine mehr und mehr ausgetüftelte...
-> www.repke.de <-
Antworten