我有这个代码:
def get_endpoint(type):
return "%s/%s.json" % (v2_endpoint,type)
def get_entities(type,endpoint=None,entities=None):
if not endpoint:
endpoint=get_endpoint(type)
entities=[]
r=requests.get(endpoint,headers=header)
entities.extend(r.json()[type])
if not 'next' in r.links:
return entities
else:
return get_entities(type,r.links['next']['url'],entities)
print "Fetching info from New Relic....",
servers = get_entities('servers')
applications = get_entities('applications')
print "Done."
Run Code Online (Sandbox Code Playgroud)
我注意到它在处理这些函数之前不会打印第一个和最后一个打印语句.我猜想,预期的行为.
那么,如何在开始处理函数之前打印第一行?
print "Fetching info from New Relic....",
Run Code Online (Sandbox Code Playgroud)
尾随逗号表示打印不应在末尾添加换行符.但是,如果没有换行符,大多数控制台都不会刷新输出,因此在打印换行符之前,您不会看到输出.
如果删除逗号,则可以看到它可以正常工作.
但是,您可以手动刷新输出而不打印换行符.但您需要手动执行此操作:
import sys
print "Fetching info from New Relic....",
sys.stdout.flush()
# do stuff
print "Done"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1817 次 |
| 最近记录: |