【发布时间】:2018-03-28 12:39:05
【问题描述】:
我一直在寻找更多pythonic方法来处理python中的错误,我发现merry
如果您从未听说过,这里是文档:https://github.com/miguelgrinberg/merry
所以我用merry写了一个小代码
from merry import Merry
merry = Merry()
@merry._try
def write_to_file(filename,data):
with open(filename,'w') as file_obj:
file_obj.write(data)
@merry._except(FileNotFoundError)
def fileNotFoundError():
print("File not found")
@merry._except(Exception)
def catch_all(e):
print(f"exception occured :{e}")
@merry._else
def else_clause():
print("no exceptions occured")
path = "C:/Users/User/Desktop1/dataHere.txt"
text = "top secret information"
write_to_file(path,text)
请注意,我改变了提高的路径
文件未找到错误
我以为 merry 会处理错误,但我得到了以下输出:
[快乐] 捕获异常
Traceback(最近一次调用最后一次):文件 “C:\python36\lib\site-packages\merry.py”,第 26 行,在包装器中 ret = f(*args, **kwargs) 文件“C:/Users/User/Desktop/merrymerry.py”,第 7 行,在 write_to_file 使用 open(filename,'w') as file_obj: FileNotFoundError: [Errno 2] 没有这样的文件或目录: 'C:/Users/j.sinjaradze/Desktop1/dataHere.txt' 找不到文件
是不是我做错了什么,或者只是快乐没有像我预期的那样工作?
【问题讨论】:
标签: python python-3.x exception merry