【问题标题】:python custom excepions: where? [closed]python自定义异常:在哪里? [关闭]
【发布时间】:2012-04-15 13:29:39
【问题描述】:

我可以在哪里编写自定义异常?

我的软件中是否有类似execeptions.py 的文件,或者我必须在它们相关的类中编写它们?

有没有关于这方面的 PEP?

【问题讨论】:

  • 然后阅读 peps。不要在没有研究的情况下在这里发布问题。
  • @tapioco123 你知道不用问就可以找到 PEP,对吧?
  • @andrewcooke 实际上不,好的问题无法通过一点的努力和谷歌来解决。
  • @andrewcooke 我相信每次有人问这样的问题时都值得指出来。毕竟,“为我在谷歌上搜索”比“为我编写代码”、“为我调试代码”之类的要糟糕得多,所有这些都违反了网站规则。
  • 好的,我用谷歌搜索了它:PEP 不会告诉你如何编写异常,因为它们是语言的古老部分,而不是 增强 提案。语言增强、样式指南和基本 python 之间存在差异。我建议你看看后面两个

标签: python exception pep


【解决方案1】:

总的来说,我发现我有两种异常。

one 用于非常具体的错误,并且只在代码的一部分中抛出。在这种情况下,我将异常定义为接近使用它的位置。这样,当开发人员看到异常并搜索它的代码时,他们也会找到原因(希望在 cmets 中找到一些有用的文档)。

另一个是跨库在多个地方引发的异常 - 一种“此库已失败”异常。然后我在库的顶级模块中定义它(在用户最有可能用作系统“主要入口点”的任何模块中)。

有时第一种可以继承第二种。

这只是我自己的用途 - 我不知道任何 peps 或其他准则。

【讨论】:

    猜你喜欢
    • 2021-12-29
    • 2011-11-30
    • 2021-12-18
    • 2012-08-31
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    • 2012-07-06
    • 1970-01-01
    相关资源
    最近更新 更多