[Tutor] Communicating Between Programs Using Raw Inputs (con'd)
Christopher King
g.nius.ck at gmail.com
Mon Jun 20 16:02:28 CEST 2011
Well, that's a trick me and jake learned in a book to stop the program
from changing.
On Saturday, June 18, 2011, aditya <nauty.me04 at gmail.com> wrote:
>
>
> On Sat, Jun 18, 2011 at 9:35 PM, Jacob Bender <benderjacob44 at gmail.com> wrote:
>
> Dear Tutors,
>
> Alright, I'm using linux (ubuntu) and I took all of your advice and I got something that works and doesn't work at the same time. Here's the source code for my two programs called Lock and Key:
>
> Lock.py:
>
> password = "a"
>
>
> psswd_try = raw_input("What's the password? ")
>
>
> if psswd_try == password:
>
> print "correct!!!"
>
> raw_input()
>
> else:
>
> print "wrong"
>
> raw_input()
>
> Why do you need to call raw_input() again? You are giving the input only once so remove raw_input() from both if and else , that should do the work
>
> Key.py:
>
> import sys
>
>
> sys.stdout.write("a")
>
> In the linux terminal I ran this command(they were both in my home folder, so no directories were needed):
>
> python Key.py | python Lock.py
>
> And all went well except for an EOF error caused by the raw_input inside the "if" statement in my Lock program. However I did get it to print "correct", so I know sys.stdout.write() works for what I want it to, but I don't want the EOF error. Here's the output:
>
> Traceback (most recent call last):
> File "Lock.py", line 7, in <module>
> raw_input()
> EOFError: EOF when reading a line
>
> Please help me get rid of it because I couldn't find a sys.stdout.close() command or any other std command that would help.
>
> Thanks!
>
>
> _______________________________________________
> Tutor maillist - Tutor at python.org
> To unsubscribe or change subscription options:
> http://mail.python.org/mailman/listinfo/tutor
>
>
>
> --
> RegardsAditya
>
More information about the Tutor
mailing list