Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #52160
| Date | 2013-08-07 19:49 -0700 |
|---|---|
| From | Larry Hudson <orgnut@yahoo.com> |
| Newsgroups | comp.lang.python |
| Subject | Re: beginner question (True False help) |
| References | <6c6dedec-5e47-4229-bc67-01b058cdb410@googlegroups.com> |
| Message-ID | <_4udneujNNfJmp7PnZ2dnUVZ_gOdnZ2d@giganews.com> (permalink) |
On 08/07/2013 01:17 AM, eschneider92@comcast.net wrote:
> I'm trying to create an option for the program to repeat if the user types 'y' or 'yes', using true and false values, or otherwise end the program. If anyone could explain to me how to get this code working, I'd appreciate it.
>
> letters='abcdefghijklmn'
> batman=True
> def thingy():
> print('type letter from a to n')
> typedletter=input()
> if typedletter in letters:
> print('yes')
> else:
> print('no')
> def repeat():
> print('go again?')
> goagain=input()
> if goagain in ('y', 'yes'):
> print('ok')
> else:
> print('goodbye')
> batman=False
> while batman==True:
> thingy()
> repeat()
> print('this is the end')
>
You've already received answers to this, primarily pointing out that batman needs to be declared
as global in your repeat() function. Global variables can be read from inside a function
without declaring them as such, but if you need to change them, they MUST be declared as
globals, otherwise it will merely create an independant local variable with the same name.
A second possibility is to do away with batman in the repeat() function, and instead return True
in the 'yes' clause and False in the else clause. Then in your while loop, change the repeat()
line to:
batman = repeat()
A third version (which I would prefer) is to do away with batman altogether (maybe the Penguin
got 'im??) ;-) Use the True/False version of repeat() and change the while loop to:
while True:
thingy()
if not repeat():
break
And finally unindent your final print() line. The way you have it will print 'The end' every
time in your loop. Not what you want, I'm sure.
-=- Larry -=-
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
beginner question (True False help) eschneider92@comcast.net - 2013-08-07 01:17 -0700
Re: beginner question (True False help) Joshua Landau <joshua@landau.ws> - 2013-08-07 09:42 +0100
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-07 13:59 -0700
Re: beginner question (True False help) Dave Angel <davea@davea.name> - 2013-08-08 01:18 +0000
Re: beginner question (True False help) Larry Hudson <orgnut@yahoo.com> - 2013-08-07 19:49 -0700
Re: beginner question (True False help) wxjmfauth@gmail.com - 2013-08-07 23:20 -0700
Re: beginner question (True False help) Chris Angelico <rosuav@gmail.com> - 2013-08-08 12:41 +0100
Re: beginner question (True False help) Terry Reedy <tjreedy@udel.edu> - 2013-08-08 16:29 -0400
Re: beginner question (True False help) wxjmfauth@gmail.com - 2013-08-09 01:05 -0700
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-09 15:27 -0700
Re: beginner question (True False help) Joshua Landau <joshua@landau.ws> - 2013-08-10 00:05 +0100
Re: beginner question (True False help) Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-08-09 22:58 -0400
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-09 15:28 -0700
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-09 16:14 -0700
Re: beginner question (True False help) Joshua Landau <joshua@landau.ws> - 2013-08-10 00:30 +0100
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-09 16:24 -0700
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-09 16:34 -0700
Re: beginner question (True False help) Joshua Landau <joshua@landau.ws> - 2013-08-10 02:22 +0100
Re: beginner question (True False help) Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-08-10 01:40 +0000
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-09 16:40 -0700
Re: beginner question (True False help) MRAB <python@mrabarnett.plus.com> - 2013-08-10 01:39 +0100
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-09 16:43 -0700
Re: beginner question (True False help) eschneider92@comcast.net - 2013-08-09 18:08 -0700
csiph-web