HighLine è una libreria Ruby per facilitare l'input e l'output della console. Fornisce metodi che ti consentono di richiedere input e validarli. C'è qualcosa che fornisce funzionalità simili ad esso in Python?Esiste un Python equivalente a HighLine?
per mostrare ciò che HighLine fa vedere il seguente esempio:
require 'highline/import'
input = ask("Yes or no? ") do |q|
q.responses[:not_valid] = "Answer y or n for yes or no"
q.default = 'y'
q.validate = /\A[yn]\Z/i
end
Si chiede: "Sì o no?" E permette l'input dell'utente qualcosa. Finché l'utente non inserisce y o n (senza distinzione tra maiuscole e minuscole) stampa "Rispondi sì o no per sì o no" e consente all'utente di digitare nuovamente una risposta. Inoltre, se l'utente preme Invio, il valore predefinito è y. Alla fine, quando viene eseguito, l'input viene memorizzato in input
. Ecco un esempio di risultato in cui l'utente prima immette "EH ???" e poi "y":
Yes or no? |y| EH??? Answer y or n for yes or no ? y
C'è un modo altrettanto semplice di fare lo stesso in Python?
Non sembra così difficile da implementare. È solo una regex. Vedi il modulo ['re'] (http://docs.python.org/2/library/re.html). – Bakuriu
Il tuo esatto esempio in Python è disponibile su [ghippo di Sergii Boiko] (https://github.com/cris/ruby-quiz-in-python/blob/master/src/highline.py) –
@BurhanKhalid Se risponde al domanda che potresti voler elaborare in risposta. –