我有一个IndexError
如下:
print ("Page {1} not found, {2}: {3}".format(page, sys.exc_info()[0], err))
IndexError: tuple index out of range
我的代码是:
wait = WebDriverWait(browser, 10)
try:
wait.until(EC.visibility_of_element_located((By.ID, "summaries")))
except (TimeoutException, ConnectionRefusedError) as err:#not a TimeoutError, not the basic set of exceptions
print ("Page {1} not found, {2}: {3}".format(page, sys.exc_info()[0], err))
file.write("Page {} not found, {}: {}".format(page, sys.exc_info()[0], err))
#file.write(str(summary))
continue#next
我解决了它:
print ("Page {} not found, {}: {}".format(page, sys.exc_info()[0], err))
但我不明白为什么我首先得到IndexError
,因为{3}存在?
这是否意味着sys.exc_info()[0]
是一个元组?
为什么当我打印(type(sys.exc_info()[0])
时,返回的值是<class 'type'>
?因为exc_info[0]
会返回错误类型吗?
答案 0 :(得分:1)
就像评论中提到的那样,当您使用列表编制索引时,索引总是从0开始:
print ("Page {0} not found, {1}: {2}".format(page, sys.exc_info()[0], err))