如何使 PYTHON 中的 try 函数只执行一次,而除了执行多次?



如果"try"正确且未显示错误,如何使脚本仅打印"数字"一次?

当它出错时,我希望它继续尝试和打印("错误。尝试:" + str(x((。但如果它正确,我希望它只打印(数字(一次。

创建此脚本是为了跟踪何时在文件夹中创建某个 excel 电子表格。当它在文件夹中时,我希望脚本打印(数字(。

问题是当 excel 已经在文件夹中时,脚本会继续打印(编号(16 次,直到num_retries完成。

num_retries = 16
interval = 2
for x in range(1, num_retries): 
try:
result = open("I:/workbook.xls")
import xlrd
workbook = xlrd.open_workbook("I:/workbook.xls")
worksheet = workbook.sheet_by_name("sheet1")
number = worksheet.cell(3, 13).value
print(number)
except:
sleep(interval)
print("Error. Attempt: " + str(x))
pass

谢谢!

print(number)后添加break,以便在跳出循环时获得正确的数字。你的代码是这样的:

for x in range(1, num_retries): 
try:
result = open("I:/workbook.xls")
import xlrd
workbook = xlrd.open_workbook("I:/workbook.xls")
worksheet = workbook.sheet_by_name("sheet1")
number = worksheet.cell(3, 13).value
print(number)
break
except:
sleep(interval)
print("Error. Attempt: " + str(x))
pass

最新更新