这是我的代码:
def get(url):
print 'GET: ' + url,
r = requests.get(url)
print 'DONE'
return r
get('https://www.###.com/getfoo')
输出:
request.get
需要大约5秒才能得到结果。 然而输出显示在5秒之后,而不是第一次imedeately和 DONE 5秒后。
为什么?
答案 0 :(得分:2)
因为控制台是行缓冲输出。致电sys.stdout.flush()
以便冲洗它。
答案 1 :(得分:1)
它的bcs print()不会刷新到stdout;
你可以这样做
import requests
from sys import stdout
def get(url):
stdout.write( 'GET: ' + url+"\n");
stdout.flush(); # this func() will flush all to stdout
r = requests.get(url);
print("DONE");
return r;
get("http://programmersforum.ru/");