开始ruby示例不产生输出

时间:2012-03-15 20:04:42

标签: ruby

我正在从史蒂夫·霍兹纳(Steve Holzner)的铁轨上开始学习这本书,我正在尝试书中的一些代码:

#!/usr/bin/env ruby
until($_ != "q")
  puts "Running"
  print "Enter q to quit: "
  gets
  chomp
end

当我运行程序时,没有任何反应!

5 个答案:

答案 0 :(得分:4)

该过程开始时,

$_nil。因此,until条件立即得到满足,甚至不会运行循环一次。

答案 1 :(得分:2)

由于您要重复输入的字母 q,您的第一行应该是;

until($_ == "q")

现在,$_第一次到达时未设置为q,因此会立即退出循环。

答案 2 :(得分:2)

需要until($_ == "q")

你拥有它的方式是建议它一直运行,直到“q”之外的任何东西都被输入。因此,当输入任何内容时它将退出,如果键入q,则它将继续。

答案 3 :(得分:2)

运行此程序时,

$_将返回nil。因为nil是!= q,所以该程序根本不会运行。它将以nil退出。

答案 4 :(得分:2)

修正了你的代码,brah

#!/usr/bin/env ruby
foo = ''
while foo != 'q'
  puts "Running"
  print "Enter q to quit: "
  foo = gets 
  foo.chomp!
end