函数调用返回之前的Python打印?

时间:2014-12-25 16:36:28

标签: python python-2.7

ls = get_details(urls)
print "wtf..."
print "wtf..."
print "wtf..."

get_details()正在使用xpath做一些屏幕抓取,它返回/生成一个包含约10条配置文件信息的大约200个列表的生成器。

为什么在函数返回之前执行print语句...... ???我有四倍检查它是否有愚蠢的缩进错误等...

编辑:对不起,我无法发布代码。但是第2行上的函数在第1行的函数返回之前执行的打印语句对我来说是新的。

FIX:好的,显然我在退回之后不得不“耗尽”发电机......我不知道,还有什么我不了解发电机^。^

感谢帮助人员!

2 个答案:

答案 0 :(得分:2)

生成器在返回之前需要耗尽。

gen = get_details(urls)
for x in gen:
    # do something with x
print "wtf..."
print "wtf..."
print "wtf..."

答案 1 :(得分:1)

如何知道在函数返回值之前执行print语句。 做

ls = get_details(urls)
print ls
print "wtf..."

并发布答案。