On Mar 3, 2005, at 16:57, Louis Pecora wrote:

Bob Ippolito wrote:

As far as this code goes, you might be able to just get away with it if you do:

# check for MacPython IDE
if hasattr(sys.stdout, '_buf'):
    sys.stdout._buf = ...

You're right this is a test that would shut off the _buf part of the code if I were not using MacPython.

It really depends on what the rest of your code looks like. If it does sys.stdout.readline() for example, it's still going to be broken, because you can't normally read from stdout. The rawinput() function might do what you want everywhere else, though.

I can't seem to get rawinput or raw_input() to work. Ignoring my previous code. I just want something that can take standard input so, for instance, when I prompt with


print "Input 2 ints and a float"

The program will wait until I type, say

2 5  5.476  (return)

Then hand back the three numbers either as a string, a list, or individual int and float types so I can process them with my program. Sort of like
int i1, i2;
float f1;


scanf(" %d %d %e", i1, i2, f1);
would do in C using stdin. Or even a gets() which I could then process to pull out the two ints and a float.
I'm just looking for simple input of numbers and strings. I'd like to do this from BBEdit rather than MacPython. Anyone out there done this with TextWrangler?

I don't know a damn thing about TextWrangler, but this works with any Python that has a working stdin:


while True:
text = raw_input("Input 2 ints and a float: ")
try:
i1, i2, f1 = [t(v) for (t, v) in zip((int, int, float), text.split())]
except ValueError, e:
print 'Invalid Entry: %s' % (e,)
continue
break


-bob

_______________________________________________
Pythonmac-SIG maillist  -  Pythonmac-SIG@python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig

Reply via email to