我有一个iPython笔记本,其中包含一些代码块,我希望它能够在执行时有机会停止。
代码从API下载查询,并在第一次返回时确定最大行数以及是否包含采样数据。
根据它是否有采样数据,以及在多大程度上,我希望选择在while循环之前停止代码,迭代地下载完整数据集。
我所拥有的“中断”代码如下:
print "Contains sampled data? " + str(metadata["containsSampledData"])
print "Break query? -> Y"
bi = raw_input()
if bi == "Y":
break
我已经尝试了返回和中断,它们都会出错(尽管它们会停止代码)。另外,我已经厌倦了quit()但是我不想重置内核并重新导入模块/创建变量。
有没有办法,在循环之外,而不是在一个函数内,你可以停止代码,而不退出实例?
答案 0 :(得分:0)
我认为您需要重新思考并重写程序的逻辑。
print "Contains sampled data? " + str(metadata["containsSampledData"])
while True:
# Check the condition with your API stuff here
# and exit or ask everytime if the condition is true as shown below
print "Break query? -> Y"
bi = raw_input()
if bi == "Y":
break
# Continue executing your code here.
另一种选择是使用sys.exit(),但是它会退出程序。