Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python CGI脚本中执行print语句后,立即将输出打印到网页_Python_Python 2.7_Python 3.x_Cgi_Flush - Fatal编程技术网

在Python CGI脚本中执行print语句后,立即将输出打印到网页

在Python CGI脚本中执行print语句后,立即将输出打印到网页,python,python-2.7,python-3.x,cgi,flush,Python,Python 2.7,Python 3.x,Cgi,Flush,我想在执行print语句后立即在网页上打印输出。这是我的密码: #!/usr/bin/python2.7 import sys, time sys.stdout.write('Content-Type: text/html\n') sys.stdout.write('\n\n') print "<html><body>" print "hi" sys.stdout.flush() for i in range(10): print '<div>

我想在执行print语句后立即在网页上打印输出。这是我的密码:

#!/usr/bin/python2.7
import sys, time    
sys.stdout.write('Content-Type: text/html\n')
sys.stdout.write('\n\n')
print "<html><body>"
print "hi"
sys.stdout.flush()
for i in range(10):
    print '<div>%i</div>'%i
    sys.stdout.flush()
    time.sleep(1)
print "</body></html>"
#/usr/bin/python2.7
导入系统,时间
sys.stdout.write('Content-Type:text/html\n')
sys.stdout.write('\n\n')
打印“”
打印“嗨”
sys.stdout.flush()
对于范围(10)内的i:
打印“%i”%i
sys.stdout.flush()
时间。睡眠(1)
打印“”

但我只有在执行完整脚本后才能一次看到所有输出。我遗漏了什么吗?

有关详细信息,请参阅。(它使用Perl,但基本原则仍然适用。)@John Gordon,它没有帮助。我仍然无法解决这个问题,sys.stdout.flush在我的情况下似乎不起作用,如果有人能提出任何其他解决方案,那就太好了。我认为问题在于,你的浏览器在显示任何内容之前,都要等到获得所有输出。我在firefox、chrome和IE这三种浏览器中都试过了,但都没有成功。不确定解决方案是什么。有关详细信息,请参阅。(它使用Perl,但基本原则仍然适用。)@John Gordon,它没有帮助。我仍然无法解决这个问题,sys.stdout.flush在我的情况下似乎不起作用,如果有人能提出任何其他解决方案,那就太好了。我认为问题在于,你的浏览器在显示任何内容之前,都要等到获得所有输出。我在firefox、chrome和IE这三种浏览器中都试过了,但都没有成功。不确定解决方案是什么。