Ruby 针对不同用户输入的不同消息
如何将一条消息(字符串)用于特定答案(用户输入),另一条消息用于另一个答案?例如Ruby 针对不同用户输入的不同消息,ruby,Ruby,如何将一条消息(字符串)用于特定答案(用户输入),另一条消息用于另一个答案?例如 puts "Did You Like My Program?" feedback = gets if feedback = "Yes" puts "We're Glad!" elsif feedback = "No" puts "We Will Try To Improve!" end 我应该更改、添加或修改什么?您的问题是,在比较时,您必须使用,而不是= 在命令行上输入时,始终使用Enter。它在字符
puts "Did You Like My Program?"
feedback = gets
if feedback = "Yes"
puts "We're Glad!"
elsif feedback = "No"
puts "We Will Try To Improve!"
end
我应该更改、添加或修改什么?您的问题是,在比较时,您必须使用,而不是
=
在命令行上输入时,始终使用Enter。它在字符串末尾生成\n
。因此,您需要使用删除它
此外,为了过滤用户输入,我建议使用以下变体:
feedback = nil
until %w[y n].include?(feedback)
puts 'Did You Like My Program? Y/N'
feedback = gets.chomp.downcase
end
if feedback == 'y'
puts "We're Glad!"
else
puts "We Will Try To Improve!"
end
简要说明:
- 代码使用和
等于%w[y n]
[“y”,“n”]
-循环在条件为until
时执行代码false
feedback=get.chomp
。和反馈==“是”