我在ruby中遇到了一个分支问题
问题,我试图在我的命令行中运行这个。我正在使用最新的ruby,在Windows上。。。是我的电脑吗? 语法错误,意外的t标识符是弹出的消息我在ruby中遇到了一个分支问题,ruby,syntax-error,branch,Ruby,Syntax Error,Branch,问题,我试图在我的命令行中运行这个。我正在使用最新的ruby,在Windows上。。。是我的电脑吗? 语法错误,意外的t标识符是弹出的消息 puts "Hello, what\'s your name?" name = gets.chomp puts "Hello, " + name + "." if name == 'Chris' puts "What a lovely name!" if name == 'Joey' puts "Wow! That\'s an even better na
puts "Hello, what\'s your name?"
name = gets.chomp puts "Hello, " + name + "."
if name == 'Chris' puts "What a lovely name!"
if name == 'Joey' puts "Wow! That\'s an even better name than Chris"
gets
我在哪里搞砸了?代码不见了
end
<代码>测试表达式和正文
应该分开,除非您使用然后
或:
puts "Hello, what\'s your name?"
name = gets.chomp
puts "Hello, " + name + "." # This line should be separated from previous line.
if name == 'Chris'
puts "What a lovely name!"
end # <----
if name == 'Joey'
puts "Wow! That\'s an even better name than Chris"
end # <---
gets
放“你好,你叫什么名字?”
name=gets.chomp
将“Hello”、+name+“#这一行应与前一行分开。
如果name=='Chris'
写着“多么可爱的名字!”
end#看起来很小的偏好错误:
puts "Hello, what\'s your name?"
name = gets.chomp
puts "Hello, " + name + "."
puts "What a lovely name!" if name == 'Chris'
puts "Wow! That\'s an even better name than Chris" if name == 'Joey'
gets
如果(双关语)你想把这些写在一行上
if name == 'Chris' puts "What a lovely name!"
if name == 'Joey' puts "Wow! That\'s an even better name than Chris"
像这样做
puts "What a lovely name!" if name == 'Chris'
puts "Wow! That\'s an even better name than Chris" if name == 'Joey'
当单引号未用作字符串分隔符时,不需要转义单引号
您还可以使用if/else语句
puts "Hello, what's your name?"
name = gets.chomp
puts 'Hello, ' + name + '.'
if name == 'Chris'
puts 'What a lovely name!'
else name == 'Joey'
puts "Wow! That's an even better name than Chris"
end
gets
更符合您的代码建议,也许:
puts "Hello, what's your name?"
name = gets.chomp
puts 'Hello, ' + name + '.'
puts 'What a lovely name!' if name == 'Chris'
puts "Wow! That's an even better name than Chris" if name == 'Joey'
gets
再次注意,我只在需要避开撇号的地方使用了双引号
请注意,双引号字符串允许“字符串插值”也被称为“变量插值”,如果您想搜索它,但通常不需要使用它们。样式可能会指示其他情况。您忘记了您的if
语句的end
关键字。只是好奇而已。这一行“Hello,“+name+””不是应该在新行吗?对于双引号内的第二行,不需要转义单引号/撇号。就风格而言,可能使用单引号,除非插值需要双引号,或者可能不需要转义单引号。