python - "cheap exceptions"是解释型语言的典型值吗?

标签 python performance exception coding-style interpreter

来自 C++ 背景,我学会了将异常的使用限制在特殊情况下,我对 Python's cheap exceptions 感到非常惊讶。 .事实上,某些语言特性(如迭代)似乎是建立在抛出异常的基础上的。当考虑到 (python) 解释器必须保证其自身的完整性并因此无论如何都要进行多项检查时,这是有道理的。

期望便宜的异常在解释型语言中是正常的是否有意义?

编辑:

为了明确这个问题主要不是针对性能,我应该补充一点,我尝试通过学习新语言来扩展我的编程技能。在 C++ 或 Pascal 中,我可能永远不会在非异常情况下使用异常,但在 Python 中我显然应该使用(这可能不是唯一的语言)。因为如果我使用或不使用异常,它会对我的代码产生结构上的差异,一个简单的指南/经验法则将有助于开始使用一种新语言..

最佳答案

正确看待:

在 C++ 中,除异常(exception)情况外,一切都是便宜的;

在 Python 中,异常与正常情况一样耗时。

关于python - "cheap exceptions"是解释型语言的典型值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27347267/

相关文章:

python - neo4j,在论坛结构中,如何查找每个帖子得到了多少回复(包括 child 的 child ......)

c# - 使用 SIMD (System.Numerics) 编写向量求和函数并使其比 for 循环更快

javascript - 如何获得 google recaptcha V3 响应

java - ActionListener 类中的哈希字符串 (SHA-256)

python - 使用 ConfigParser (Python) 编辑 ini 文件选项值

python - 多处理时避免在每个子进程中加载​​ spaCy 数据

python - 如何将指定的键+值移动到另一个字典

performance - 进程的 CPU 利用率是什么意思以及如何降低它?

mysql - 设置过程中出现异常

java - 如果方法抛出未在方法声明中指定的异常, "throws"会发生什么