简单异常和消息传递

ezception的Python项目详细描述


ezexception(和EZMessage)

这些类提供了定义异常类和 消息属性。在

目标

  • 减少了定义错误类的样板文件,这样就可以更多地使用它们。在
  • 格式化不会在引发时发生,因此不会发生捕获错误 字符串计算成本。在
  • 异常处理程序更容易探测异常字段。在
  • 类基异常很容易定义。在
  • 适用于常规的Python异常类。在
  • 默认情况下与gettext模块接口。在
  • 允许在错误类中关联其他i18n消息传递。在

安装

pip install ezception

注意:ezexception还没有在pypi上。在正式发布之前:

^{pr2}$

使用

importezceptionclassMyWebRequester(object):classError(ezception.EZCeption):'A general error has occurred.'classOpenError(Error):'An error opening {self.url!r} has occurred.'classNoURLError(OpenError):'''        No URL was provided.        ''''classNoURLError(OpenError):'''        The scheme {self.scheme!r} is not acceptable.        '''...defopen(self,url):...stuffhappens....Ohnoes!raiseself.BadSchemeError(scheme=url.scheme)

所以在这个例子中,类定义了一个简单的错误层次结构。程序员 可以微不足道的陷阱MyWebRequester。错误捕捉由 我的网络请求者。因为定义这些错误非常简单 更可能出现健壮的异常层次结构。在

此外,在异常时不会生成消息。因为这个, 很容易捕捉和确定更好的处理代码。默认的Python 异常使用参数,这要求程序员有更紧密的耦合 用错误类获取失败的参数(或 错误类需要定义更多属性)。在

只有在打印异常时,才会发生字符串化。此外, 要显示的消息是使用gettext模块处理的,因此添加 使用regular.po可以支持此类消息的其他语言 文件夹。所有消息都由全局跟踪所有消息这么说吧 生成base.po文件也得到了简化。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将cassandra中的行数据转换为与列相关的嵌套json   java如何使用jcr XPath在jcr:content/@jcr:data中搜索?   java在使用openCV进行安卓开发时如何利用手机的广角镜头   java解析扩展了接口,结束了一个潜在的无限循环   位置服务的@Override方法中存在java Android应用程序错误   java本地线程的用途和需求是什么   具有左右子访问的java节点树遍历   java验证JsonWebToken签名   JUL日志处理程序中的java日志记录   嵌入式Java读取给定时间段的串行数据。   java有没有办法从多个URL获取多个图像?   java线程通过等待intent阻止自己发送intent   java Spring MVC解析多部分内容请求   java JPA/Hibernate静态元模型属性未填充NullPointerException   java格式错误的字符(需要引号,得到I)~正在处理   java为什么PrintWriter对象抛出FileNotFoundException?   java Neo4j未正确保存标签   java IE不加载图像