如果您只是想尝试 - 除非不处理异常,您如何在Python中执行此操作?
以下是正确的方法吗?
try:
shutil.rmtree(path)
except:
pass
Run Code Online (Sandbox Code Playgroud) try:
something here
except:
print('the whatever error occurred.')
Run Code Online (Sandbox Code Playgroud)
如何在except:
块中打印错误/异常?
我想处理来自异常的错误消息,但似乎无法将其转换为字符串.我已经阅读了os库手册页,但有些东西没有点击给我.
打印错误有效:
try:
os.open("test.txt", os.O_RDONLY)
except OSError as err:
print ("I got this error: ", err)
Run Code Online (Sandbox Code Playgroud)
但这不是:
try:
os.open("test.txt", os.O_RDONLY)
except OSError as err:
print ("I got this error: " + err)
TypeError: Can't convert 'FileNotFoundError' object to str implicitly
Run Code Online (Sandbox Code Playgroud) pd.read_csv() 可能抛出哪些异常?
在下面的示例中,我显式捕获一些异常类型并使用通用异常来捕获其他异常类型,但其他异常类型到底是什么?
查看pandas read_csv() 的文档我看不到抛出的异常的完整列表。
在更一般的情况下,确定任何调用/库可能引发的所有异常类型的建议做法是什么?
import pandas as pd
try:
df = pd.read_csv("myfile.csv")
except FileNotFoundError:
print("File not found.")
except pd.errors.EmptyDataError:
print("No data")
except pd.errors.ParserError:
print("Parse error")
except Exception:
print("Some other exception")
Run Code Online (Sandbox Code Playgroud) 在 python 中,我有处理异常并打印错误代码和消息的代码。
try:
somecode() #raises NameError
except Exception as e:
print('Error! Code: {c}, Message, {m}'.format(c = e.code, m = str(e))
Run Code Online (Sandbox Code Playgroud)
但是,e.code
这不是获取错误名称 (NameError) 的正确方法,我找不到答案。我如何获得错误代码?