HighLine là thư viện Ruby để giảm bớt đầu vào và đầu ra của bàn điều khiển. Nó cung cấp các phương thức cho phép bạn yêu cầu đầu vào và xác nhận nó. Có cái gì đó cung cấp chức năng tương tự như nó trong Python?Có Python tương đương với HighLine không?
Để hiển thị những gì Highline không xem ví dụ sau:
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
Nó hỏi "Có hay không?" Và cho phép người dùng nhập vào một cái gì đó. Miễn là người dùng không nhập y hoặc n (không phân biệt chữ hoa chữ thường), nó in "Trả lời y hoặc n nếu có hoặc không" và cho phép người dùng nhập lại câu trả lời. Ngoài ra, nếu người dùng nhấn Enter, giá trị mặc định là y. Cuối cùng, khi nó được thực hiện đầu vào được lưu trữ trong input
. Đây là kết quả ví dụ khi người dùng nhập "EH ???" đầu tiên và sau đó "y":
Yes or no? |y| EH??? Answer y or n for yes or no ? y
Có cách tương tự đơn giản để thực hiện tương tự trong Python không?
Nó trông không khó thực hiện. Nó chỉ là một regex. Xem mô-đun ['re'] (http://docs.python.org/2/library/re.html). – Bakuriu
Ví dụ chính xác của bạn trong Python có sẵn trên [Sergii Boiko's github] (https://github.com/cris/ruby-quiz-in-python/blob/master/src/highline.py) –
@BurhanKhalid Nếu nó trả lời câu hỏi bạn có thể muốn xây dựng nó thành câu trả lời. –