我对Python相当陌生,来自JavaScript背景,我熟悉捕获命令输出(成功,错误)并链接结果以指示应用程序的下一个命令。有没有办法在Python中做类似的事情?
例如,我正在使用gspread
软件包与Google表格进行交互。我正在运行命令gc.open(*Name*)
,该命令在提供字符串(*Name*)
时会搜索Google表格,但是如果此操作没有返回值或返回错误,则SpreadsheetNotFound:
,那么我将创建一个具有gc.create(*Name)
条件的工作表。我当时正在尝试使用try / exception,但感觉好像是错误地尝试了它。
这是我希望实现的目标:
if (API Call Finds the Sheet):
Set regression_output = sheet
else:
Set regression_output = creation of sheet with specified name
当前代码:
open_regression_output_sheet = gc.open(file_name)
for value in open_regression_output_sheet:
try:
regression_output = print("Test")
except:
regression_output = print("Error")
错误:
SpreadsheetNotFound:
答案 0 :(得分:0)
这样的逻辑故障如何:
try:
open_regression_output_sheet = gc.open(file_name)
except:
print 'SpreadsheetNotFound raised, creating new spreadsheet'
open_regression_output_sheet = gc.create('A new spreadsheet')
答案 1 :(得分:0)
使用try / except时,您处在正确的轨道上,但请特别注意回溯表明发生异常的位置。我猜这实际上是
引发异常的open_regression_output_sheet = gc.open(file_name)
行。
如果是这种情况,则需要将该行换成try / except之类的
try:
open_regression_output_sheet = gc.open(file_name)
except SpreadsheetNotFound:
# handle the exception or whatever
else:
for value in open_regression_output_sheet:
...