Bob Gailer wrote: > Alan Gauld wrote: > >> Hi Ben, >> >> >> >>> I want to enter the words and definitions from the text file into the >>> dict. >>> The way the text file is set up is that one line is the word and the >>> next line is the definition. >>> >>> >> >> >>> I tried using a for loop like this >>> >>> f = open('glossary.txt','r') >>> gloss = {} >>> >>> for line in f: >>> gloss[line] = line >>> >>> >> The problem that you have is that you really need to read two lines at a >> time. >> (Assuming that the definitions are all on one line which may not be true!) >> A while loop may be easier in this case. >> >> A for loop will read each line individually. You then need to set a >> definition >> flag to tell the loop body whether you are reading a definition or a key. >> >> Either type of loop is possible. Since you started with a for loop lets >> stick with it... >> >> definition = False >> currentKey = None >> >> for line in f: >> if isDefinition: >> gloss[currentKey] = line >> currentKey = None >> isDefinition = False >> else: >> currentKey = line >> isDefinition = True >> >> > Or you can use next(): > > for line in f: > gloss[line] = f.next() > Or even: [gloss.setdefault(l,f.next()) for l in f] >> If the definitions take up more than one line each then you will need to >> think >> about how to identify the end of a definition - a blank line maybe? You will >> need to append the lines to the glossary entry (rather than just assign >> them) >> until the end of the definition. And you will need to update the >> isDefinition >> flag at the appropriate times. >> >> HTH, >> >> Alan G >> Author of the learn to program web tutor >> http://www.freenetpages.co.uk/hp/alan.gauld >> >> >> _______________________________________________ >> Tutor maillist - Tutor@python.org >> http://mail.python.org/mailman/listinfo/tutor >> >> >> >> > > _______________________________________________ > Tutor maillist - Tutor@python.org > http://mail.python.org/mailman/listinfo/tutor > > >
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor