Ask your own question, for FREE!
MIT 6.00 Intro Computer Science (OCW) 8 Online
OpenStudy (anonymous):

I am reposting this because I think Open Study messed up the replies to my previous post. I am trying to figure out a simple way to take lines from a text document and turning them into keys in a dictionary (values don't matter, can be arbitrary). I was thinking something like: wordList = open('word.txt', 'r', -1) wordDict = {} for line in wordList: wordDict[line] = 0 but wordDict[line] looks for a integer index value right? What am I missing? I know it is a simple little syntax error. I have been looking on google, but haven't found a situation as simple as this.

OpenStudy (anonymous):

jesse.bo, your code worked fine for me. I have a word.txt file containing: test1 test2 and test3 I run your code and then print wordDict and get: {'test2 and test3': 0, 'test1\n': 0} Voila! A dictionary comprised of keys for every line in word.txt and an arbitrary value 0 for each.

OpenStudy (anonymous):

if you don't mind have the newline character included in the key: word_dict = dict.fromkeys(wordlist.readlines(), None) http://docs.python.org/library/stdtypes.html#dict.fromkeys http://docs.python.org/library/stdtypes.html#file.readlines

OpenStudy (anonymous):

or if you don't want the newline character: words_dict = dict.fromkeys(wordlist.read().splitlines(), None)

Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!
Can't find your answer? Make a FREE account and ask your own questions, OR help others and earn volunteer hours!

Join our real-time social learning platform and learn together with your friends!