I want to read some input continuously from keyboard and then I would
like to process these input.
I have a code like this but getting errors, I would like to terminate
when there is an empty string in the input, why is not this easy as the
"cin" or "scanf". I had to search for even this easy operation. Is
there a way to send EOF signal to terminate input(ctrl+??????)
#!/usr/bin/env python
import sys, math # load system and math module
x=[]
y=[]
IN=True
print 'input x and y values : '
while IN:
xt,yt=input()
if (xt==' ' or yt==' '):
print 'you have not entered x or y, quiting'
break
else:
xt= float(xt);yt=float(yt)
x.append(xt);y.append(yt)
for i in range(x):
print x[i]
You can send a signal (check the signal module in the docs), but you
can also just do what you wanted:
x = []
y = []
while True:
msg = 'input x and y values : '
uin = raw_input(msg).strip()
if not uin:
print 'you have not entered x or y, quiting'
break
else:
xt, yt = uin.split(' ', 1)
x.append(float(xt))
y.append(float(yt))
for i in range(len(x)):
print x[i]
Regards,
Jordan
Summary:
std::cout << "Statement\n";
is
print "Statement"
std::cin << value;
is
value = raw_input()
std::cout << "Prompt:"
std::cin << value;
is
value = raw_input("Prompt:")
It's a little assymetrical, but useful. Lower-level functions also
exist in the sys module as stdin, stdout and stderr.
Oops, that should be >>.