ruby中是否存在像/dev/null这样的变量

ruby中是否存在像/dev/null这样的变量,ruby,variables,null,Ruby,Variables,Null,有时我需要分配一个永远不会使用的变量。例如: stdin, stdout, status = Open3.capture3("ls ./dir") 在本例中,我只对stdout感兴趣,因此不需要stdin和状态。嗨,在这种情况下,我可以防止未使用变量的赋值吗> 我应该做点什么吗 null, stdout, null = Open3.capture3("ls ./dir") 谢谢。在这种情况下通常使用下划线 _, stdout, _ = Open3.capture3("ls ./dir")

有时我需要分配一个永远不会使用的变量。例如:

stdin, stdout, status = Open3.capture3("ls ./dir")
在本例中,我只对
stdout
感兴趣,因此不需要
stdin
状态。嗨,在这种情况下,我可以防止未使用变量的赋值吗>

我应该做点什么吗

null, stdout, null = Open3.capture3("ls ./dir")

谢谢。

在这种情况下通常使用下划线

_, stdout, _ = Open3.capture3("ls ./dir")
大概是这样的:

_, stdout, _ = Open3.capture3("ls ./dir")

Open3.capture3
返回
Array
的实例。您可以使用解构并将其视为元组(这是常见的),也可以将结果视为实际数组:

stdout = Open3.capture3("ls ./dir")[1]
这不是惯用语。

在多个赋值中,前面未使用的变量名带有

_stdin, stdout, _status = Open3.capture3("ls ./dir")

注:如上@Stefan所述,
capture3
返回的第二个流实际上是
stderr

请注意,
capture3
返回stdout、stderr和status。谢谢,从这个问题中借用了代码,因此有更多关于使用u作为变量的信息。这是真的,但我不知道我在找