只在函数执行完毕后打印

2024-03-28 09:36:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这个代码:

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."

我注意到,在处理完这些函数之前,它不会打印第一个和最后一个print语句。我想是预期的行为吧。在

在第一行开始处理之前,我怎么做?在


Tags: nonejsongetreturnifdeftypenot
1条回答
网友
1楼 · 发布于 2024-03-28 09:36:31
print "Fetching info from New Relic....",

后面的逗号表示打印不应在末尾添加换行符。但是,大多数控制台在没有换行符的情况下不会刷新输出,因此直到还打印了换行符,才能看到输出。在

如果你去掉逗号,你可以看到它会起作用。在

但是,您可以手动刷新输出而不打印新行字符。但您需要手动执行此操作:

^{pr2}$

相关问题 更多 >