(Python) 未显示多个引发的 ValueErrors
(Python) Multiple raised ValueErrors not displayed
我正在使用一个脚本,该脚本具有多个内置的引发的 ValueErrors 循环遍历文件夹中的某些文件。它检查条件,如果发生这种情况,应该为每个循环的文件报告错误消息。
但是,它只显示一个文件的一条ValueError 消息,而不是所有错误。它仍然为其他文件执行循环。因此,例如,我有文件 a 和 b,它们都应该产生错误,但是 python 只显示文件 a 的错误消息。我已经通过删除文件 a 来检查它,并且在 运行 脚本之后它确实为文件 b
生成错误消息
我的部分代码是
for f_name in os.listdir(path):
if f_name.endswith('.xls'):
...
if a < 0:
raise ValueError('error')
else:
xxx
有人知道如何显示所有错误吗?
我认为您应该尝试 和except 语句 来查找引发异常的文件。
使用这个。
try:
if a < 0:
raise ValueError('error')
else:
xxx
except ValueError:
print(a) #this will print which file isn't satisfying the condition
我正在使用一个脚本,该脚本具有多个内置的引发的 ValueErrors 循环遍历文件夹中的某些文件。它检查条件,如果发生这种情况,应该为每个循环的文件报告错误消息。
但是,它只显示一个文件的一条ValueError 消息,而不是所有错误。它仍然为其他文件执行循环。因此,例如,我有文件 a 和 b,它们都应该产生错误,但是 python 只显示文件 a 的错误消息。我已经通过删除文件 a 来检查它,并且在 运行 脚本之后它确实为文件 b
生成错误消息我的部分代码是
for f_name in os.listdir(path):
if f_name.endswith('.xls'):
...
if a < 0:
raise ValueError('error')
else:
xxx
有人知道如何显示所有错误吗?
我认为您应该尝试 和except 语句 来查找引发异常的文件。 使用这个。
try:
if a < 0:
raise ValueError('error')
else:
xxx
except ValueError:
print(a) #this will print which file isn't satisfying the condition