Je sais que cette question est ancienne, mais j'ai pensé que je pourrais montrer ce que j'utilise comme méthode standard pour obtenir des données.
require 'readline'
def input(prompt="", newline=false)
prompt += "\n" if newline
Readline.readline(prompt, true).squeeze(" ").strip
end
C'est vraiment bien parce que si l'utilisateur ajoute des espaces bizarres à la fin ou au début, il les supprimera, et il garde un historique de ce qu'il a entré dans le passé (Changez la fonction true
a false
pour qu'il ne le fasse pas.). Et, si ARGV
n'est pas vide, alors gets
essaiera de lire depuis un fichier dans ARGV
au lieu d'obtenir des informations. En plus, Readline
fait partie de la bibliothèque standard de Ruby, vous n'avez donc pas besoin d'installer de gemmes. De plus, vous ne pouvez pas déplacer votre curseur lorsque vous utilisez la fonction gets
mais vous pouvez avec Readline
.
Et je sais que la méthode n'est pas en une ligne, mais elle l'est quand on l'appelle.
name = input "What is your name? "