Отсутствие слова "научиться рубиному трудному пути" приводит к выполнению упражнения 14
В настоящее время я работаю над упражнением 14 с другом, которое представляет собой очень простую интерполяцию строк и захват пользовательского ввода. Мой код выглядит так:
user_name = ARGV.first
prompt = '> '
puts "Hi #{user_name}."
puts "I'd like to ask you a few questions."
puts "Do you like me #{user_name}? ", prompt
likes = $stdin.gets.chomp
puts = "Where do you live #{user_name}? ", prompt
lives = $stdin.gets.chomp
puts "What kind of computer do you have? ", prompt
computer = $stdin.gets.chomp
puts """
Alright, so you said #{likes} about liking me.
You live in #{lives}. Not sure where that is.
And you have a #{computer} computer. Nice.
"""
Должно работать довольно просто, но я обнаружил, что после likes=
строка, следующая строка с предложением "где вы живете" не отображается на экране, но lives=
предлагается для. То есть, сразу после ввода "лайков", к строке "строк" переходят, не показывая мне вывод, полученный ранее! Следующая подсказка, начинающаяся с computer=
работает как положено.
Я использую ruby 2.1.2, но то же самое поведение появляется на 2.2.3, и онлайн REPL здесь
Почему это происходит?
1 ответ
Решение
У вас есть = после того, как путы вставляются в строку 8. Удаление этого должно исправить проблему.