Não é possível alterar Strings no int em `[]`

Em ruby, eu tento converter uma String para Int no operador '[]' Mas falhou. Aqui está o código (minha entrada é14 45):

STDIN.gets.split(/\s+/).each do |str|
    book = tags[str.to_i]     # book is just a new variable.  tags is an array 
end

o rubi vai parar com um erro:in '[]': no implicit conversion of String into Integer (TypeError)

Então eu mudo meu código para o seguinte (este funciona bem):

STDIN.gets.split(/\s+/).each do |str|
  number = str.to_i     # for converting
  book = tags[number]
end

Este funciona bem. Mas devo adicionar mais uma linha para conversão. Existe uma boa maneira de evitar essa linha? minha versão do ruby ​​é:$: ruby --version ==> ruby 2.0.0p0 (2013-02-24 revision39474) [i686-linux]

Oi pessoal, Por favor, deixe-me saber por que você ainda quer fechar este tópico. OBRIGADO.

questionAnswers(1)

yourAnswerToTheQuestion