问题标签 [raise]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
7430 浏览

python - 引发错误与返回 False python3

嗨,我最近开始用 python 编码,我想知道如何处理错误。我做了教程diveintopython,在那里他使用raise error来反馈出了什么问题。这是我的情况:我有一个函数可以检查代表数字的字符串是否为 7 位或 8 位长以及其他一些东西

我单独使用这个函数,但我也会从另一个函数调用它,它扫描条形码并调用这个函数来验证代码。因此,如果扫描编号正确,则应继续扫描,否则应继续扫描。像我一样做它并在扫描仪功能中放置一个 try/except 块会更好还是我应该返回一个 False

非常感谢

0 投票
6 回答
421980 浏览

python - 如何在 Python 中使用“raise”关键字

我已经阅读了“raise”的官方定义,但我仍然不太明白它的作用。

简单来说,什么是“加薪”?

示例用法会有所帮助。

0 投票
1 回答
82 浏览

python - 类和异常

我在下面用构造函数构建了一个类。这个想法是,如果未指定等级和/或花色,则默认情况下应随机生成 PlayingCard 对象。如果指定了无效的花色或等级,则不应创建对象。我相信这是有效的,但我不知道该怎么做。我想验证在无效等级或套装的情况下抛出的唯一异常是我指定的异常。我很困惑为什么会有一个“NameError”说该实例没有属性“suit”,因为我在编写 raise 语句时没有指定这一点。

另外,我想让类变得灵活,以便在创建实例时不需要将用户定义的等级和西装作为字符串传递,但我似乎无法让它工作。如果有人能指出我正确的方向或解释我为什么不想这样做,将不胜感激。

0 投票
2 回答
3064 浏览

python - Python引发错误正确使用

说明

我读过很多关于在 python 中检查值类型的意见,大多数人说你不应该检查类型,而是使用 try 和 except。我想澄清几件事。

问题

当我有这样的方法时:

我不能让用户传递除 int 以外的任何类型,因为稍后在代码中它可能会导致一些更难调试的错误。根据 Python 方法,我无法检查类型。那么我应该如何以正确的方式尝试呢?

要不就

并让 Python 自行引发错误。

我知道这可能是愚蠢的问题,我只是想确定一下。

0 投票
3 回答
1519 浏览

java - Java 指数方法

我需要编写一个方法,该方法将取一个基数并将其提升到任何整数幂,无论是正数还是负数。可以假设基数不会为 0。

在方法中我需要调用递归方法并使用它。

这是我需要使用的以前的递归方法:

所以我的问题是,有人可以帮助或告诉我如何编写我需要的方法吗?

我知道当前方法很好,但我需要用另一种方法调用它。当我这样做时,我收到运行时错误

0 投票
1 回答
6208 浏览

python - 在python中为自定义异常设置退出代码

我正在使用自定义异常来区分我的异常与 Python 的默认异常。

当我引发异常时,有没有办法定义自定义退出代码?

在这段代码中,main 函数在 try 代码中运行了一些函数。捕获异常后,我想重新引发它以保留回溯堆栈。

问题是“raise”总是退出 1。我想使用自定义退出代码(对于我的自定义异常)退出脚本,并在任何其他情况下退出 1。

我已经看过这个解决方案,但这不是我想要的: 在引发异常时在 Python 中设置退出代码

这个解决方案迫使我检查我使用的每个脚本,无论异常是默认的还是自定义的。

我希望我的自定义异常能够告诉 raise 函数要使用什么退出代码。

0 投票
1 回答
1091 浏览

ruby-on-rails - Ruby:如何停止执行并在循环中打印字符串?

我正在写一个 rake 任务。问题是我想在if keeper.has_trevance_info? && candidate.has_trevance_info?为真时停止执行任务。我只想让它打印Another record already has that info!在日志中并停止任务。我该怎么做?会是raise还是throw

0 投票
2 回答
1084 浏览

c++ - abort() 的调用者在回溯中未知,有任何调试建议

我正在尝试调试我的一次崩溃,这似乎是由从某个地方引发的中止引起的,而我的 gdb 没有提供调用者详细信息,而只是在调用堆栈中显示了几帧。在调试此问题时,欢迎提出任何建议。

0 投票
4 回答
135897 浏览

python - 如何在嵌套的 try/except 块中重新引发异常?

我知道,如果我想重新引发异常,我raise会在相应的except块中简单地使用不带参数的方法。但是给定一个嵌套表达式,例如

如何在SomeError不破坏堆栈跟踪的情况下重新提升?raise在这种情况下,独自一人会重新筹集最近的AlsoFailsError. 或者我怎样才能重构我的代码来避免这个问题?

0 投票
1 回答
122 浏览

c# - 在 C# 中引发事件的这些可能性之间有什么区别?

想象一个事件

应该提高。我知道 3 种方法可以做到这一点,但我不明白其中两种方法之间的区别

这两种方法有什么区别,两种方法有什么优缺点?