【发布时间】:2020-05-05 19:39:06
【问题描述】:
这似乎会导致异常,例如在程序中进行快速和懒惰的编码中止不会
raise Exception。但是在快速开发过程中,更好的习惯用法可能是找到更方便的错误:
如果您清楚 IndexError 是 [][0] 的占位符,您可以使用 5 个字符更快地完成此操作。
但是使用[]-0 和产生TypeError 的4 个字符可以做得更好。
现在我们将-[] 或+[] 改进为3 个字符,这也是TypeError。所有这些带有字符串和元组的变体都是可能的。
在 Python 中,语法上有效的代码是否可以抛出一个具有 2 个或更少字符且无依赖且独立的异常?这意味着不定义变量,并且可以在任何地方使用,因此不要使用任何单字母变量名称,否则 a 会抛出 NameError 但显然如果在程序中使用了 a 变量,它将无法工作。
我能找到的至少是上面的 3 个字符组合,这可能是一种非常快速和短手的开发时间,仅用于中止代码的快速测试。
更新:我想出了一个想法来详尽地回答这个问题,所以我继续这样做。诚然,这是一个代码高尔夫风格的问题,但它仍然很有趣。
【问题讨论】:
-
π会导致NameError只要没有人使用 unicode 字符定义变量。 (显然,每个字符名称也都有效) -
不是 2 个字符的答案,但对我来说,3 个字符的明显解决方案是
1/0。 -
可以有多个 3 个字符:
~1j、~''、*1, -
这个代码打高尔夫球的味道不仅仅是一个实际问题。