norseman wrote:

> The direct question comes back to:
> How does one force a sync or flush() to take effect in Python with
> Tkinter in use? Or just in Python period. The keyword being force.

Here's some truly minimal code which shows the same buffering behaviour:

$ cat master.py
#!/usr/bin/env python
import os
for line in os.popen("./child.py"):
    print "-->", line.strip()

$ cat child.py
#!/usr/bin/env python
import time

for i in range(5):
    print i
    time.sleep(.2)

On Linux you can work around it with pexpect:

$ cat master2.py
#!/usr/bin/env python
import pexpect
for line in pexpect.spawn("./child.py"):
    print "-->", line.strip()

On Windows, I don't know.

Peter


-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to