0

학습 Ruby The Hard Way 14 장. 학습서에있는 내용을 직접 입력했습니다. 복사 및 붙여 넣기를 시도해 보았습니다. . 튜토리얼 자체 내 텍스트 파일 ex.rb은 다음과 같습니다구문 오류, 예상치 못한 tidenTIFIER, expecting keyword_do 또는 '{'또는 '('

user = ARGV.first 
prompt = '> ' 

puts "Hi #{user}, I'm the #{$0} script." 
puts "I'd like to ask you a few questions." 
puts "Do you like me #{user}?" 
print prompt 
likes = STDIN.gets.chomp() 

puts "Where do you live #{user}?" 
print prompt 
lives = STDIN.gets.chomp() 

puts "What kind of computer do you have?" 
print prompt 
computer = STDIN.gets.chomp() 

puts <<MESSAGE 
Alright, so you said #{likes} about liking me. 
You live in #{lives}. Not sure where that is. 
And you have a #{computer} computer. Nice. 
MESSAGE 

튜토리얼은 내가 다음과 같은 출력 가야 말한다 : 저는 여기에 두 가지 오류를 얻고있다

$ ruby ex14.rb Zed 
Hi Zed, I'm the ex/ex14.rb script. 
I'd like to ask you a few questions. 
Do you like me Zed? 
> Yes 
Where do you live Zed? 
> America 
What kind of computer do you have? 
> Tandy 
Alright, so you said Yes about liking me. 
You live in America. Not sure where that is. 
And you have a Tandy computer. Nice. 

을들이는 다음과 같습니다.

$ ruby ex.rb Zed 
ex.rb:19: syntax error, unexpected tIDENTIFIER, expecting keyword_do or '{' or ' 
(' 
Alright, so you said #{likes} about liking me. 
      ^
ex.rb:20: syntax error, unexpected keyword_in, expecting end-of-input 
You live in #{lives}. Not sure where that is. 

무슨 일이 벌어지고 있는지에 대한 아이디어가 있습니까?

+0

게시 한 코드를 복사 했으므로 오류가 발생 했으므로 수정하지 않았습니까? – toro2k

+0

나를 위해 작동합니다. 그 오류는 19 행 근처에서 잘못된 결과가있는 것처럼 보이지 않습니다. 19 행 주위에서 변경되었지만 오류를 가져올 수 없었습니다. – Stratus3D

답변

2

질문에서 파일을 가져 와서 나에게도 잘 작동합니다.

그러나, 나는 할 puts <<MESSAGE을 변경하는 경우 :

puts << MESSAGE 

, 즉 공백으로 내가 정확히 오류가 < 및 메시지 < 사이.

여기에 파일을 복사/붙여 넣을 때 누락 된 위치에 파일에 문자가 있어야합니다.