[Tutor] creat a program that reads frequency of words in file
Alan Gauld
alan.gauld at btinternet.com
Tue Jun 2 11:48:21 CEST 2015
On 02/06/15 02:35, Stephanie Quiles wrote:
> import pickle
You don;t need pickle
> def main():
> right = 0
> wrong = 0
> capitals = {'Alabama': 'Montgomery', 'Alaska': 'Juneau', \
> \
> "Arizona": 'Phoenix', \
You don't need the \
Inside {} you can put newlines as much as you like:
'Arkansas': 'Little Rock', 'California': 'Sacramento',
'Colorado': 'Denver', 'Connecticut': 'Hartford',
'Delaware': 'Dover', 'Florida': 'Tallahassee',
etc...
> for k in capitals.keys():
> state = input('Enter the capital of '+k+' :')
This loop just keeps reading the inputs but does nothing with them.
I suspect you intended to have the following lines inside the loop?
> if state.upper() == capitals[k].upper():
> right += 1
> print('Correct')
> else:
> wrong += 1
> print('Incorrect')
> choice = input('Do you want to play again y/n: ')
> if choice.upper() == 'N':
> print('end of game')
You need to provide a mechanism for exiting the loop.
The break statement can do that for you.
> else:
> choice.upper() != 'Y'
> print("invalid choice")
>
> print('Number of correct answers is: ', right)
> print("Number of incorrect answers is:", wrong)
--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
http://www.amazon.com/author/alan_gauld
Follow my photo-blog on Flickr at:
http://www.flickr.com/photos/alangauldphotos
More information about the Tutor
mailing list