如何将异常值存储为变量?看看以前的帖子,比如下面的帖子,这些方法在python3中不起作用。如果不使用pip安装包,我该怎么办?
我的目标是迭代数据,检查所有数据中的各种内容,并保留所有错误以放入电子表格。
老帖子:python:捕获任何异常并将其放入变量中
mwe:
import sys
# one way to do this
test_val = 'stringing'
try:
assert isinstance(test_val, int), '{} is not the right dtype'.format(test_val)
except AssertionError:
the_type, the_value, the_traceback = sys.exc_info()
2条答案
按热度按时间9rbhqvlz1#
except AssertionError as err:
有关更多详细信息,如解压缩异常的内容,请参阅本教程此部分底部的“exception子句可以在异常名称后指定一个变量”开头的段落ykejflvf2#
如果要测试某个变量是否为
int
,你可以使用isinstance(obj, int)
就像你已经做的那样。然而,你不应该使用
assert
验证任何数据,因为当使用-O
命令行选项。assert
语句用于验证程序的逻辑,即验证您可以从逻辑上推断程序应该处于的某些状态。如果要保存数据是否符合某些条件,只需存储
True
或False
直接生成结果,而不是Assert它,然后排除错误(除了上述原因之外,这是不必要的额外工作)。