4

Python3 有一个什么都不做的pass命令。这个命令用在 if-constructs 中,因为 python 要求程序员至少有一个else的命令。Ruby 是否有等效于 python3 的pass命令?

4

4 回答 4

6

您的陈述本质上是错误的,因为else陈述在 Python 中不是强制性的。

pass语句的常见用途之一是在try / except构造中,此时可以忽略异常。

当您定义 API 并希望推迟类/函数的实际实现时, pass也很有用。

编辑:我没有提到的一种更常见的用法 - 定义用户异常;通常您只需覆盖名称即可将它们与标准异常区分开来。

于 2012-10-14T00:54:27.837 回答
3

不,当你想要一些空的东西时,你在 Ruby 中什么也不写,因为它是空的。

def some_function()
end

不需要任何像“通过”这样的占位符。

于 2012-10-14T00:12:27.730 回答
2

不,ruby 没有pass声明你根本不会写它。

def function
    if something == 10
    end
end

相当于

def function:
    if something == 10:
       pass
于 2012-10-14T00:11:20.353 回答
0

我认为您在 ruby​​ 中不需要它…… if 不需要 else。

于 2012-10-14T00:11:06.657 回答