L
Laurent Verweijen
I have a program called increment.py as follows:
#!/usr/bin/python
n = 0
while True:
n = int(raw_input(n)) + 1
This is probably very easy to understand, but I want to run this program
from another python program.
Below is an attempt
File "increment.py", line 4, in <module>
n = int(raw_input(n)) + 1
EOFError: EOF when reading a line
('06', None) Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.6/subprocess.py", line 701, in
communicate
return self._communicate(input)
File "/usr/lib/python2.6/subprocess.py", line 1184, in
_communicate
self.stdin.flush()
ValueError: I/O operation on closed file
How do I make sure the inputstream stays open after the first call to
communicate?
#!/usr/bin/python
n = 0
while True:
n = int(raw_input(n)) + 1
This is probably very easy to understand, but I want to run this program
from another python program.
Below is an attempt
Traceback (most recent call last):>>> from subprocess import *
>>> p = Popen(["python", "increment.py"], stdin=PIPE, stdout=PIPE)
>>> p.communicate("5")
File "increment.py", line 4, in <module>
n = int(raw_input(n)) + 1
EOFError: EOF when reading a line
('06', None) Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.6/subprocess.py", line 701, in
communicate
return self._communicate(input)
File "/usr/lib/python2.6/subprocess.py", line 1184, in
_communicate
self.stdin.flush()
ValueError: I/O operation on closed file
How do I make sure the inputstream stays open after the first call to
communicate?