userquery(prompt,
enter_invalid,
responses=None,
colours=None)
| source code
|
Displays a prompt and a set of responses, then waits for a response
which is checked against the responses and the first to match is
returned. An empty response will match the first value in responses,
unless enter_invalid is True. The input buffer is *not* cleared prior to
the prompt!
prompt: a String. responses: a List of Strings. colours: a List of
Functions taking and returning a String, used to process the responses
for display. Typically these will be functions like red() but could be
e.g. lambda x: "DisplayString". If responses is omitted,
defaults to ["Yes", "No"], [green, red]. If only
colours is omitted, defaults to [bold, ...].
Returns a member of the List responses. (If called without optional
arguments, returns "Yes" or "No".) KeyboardInterrupt
is converted to SystemExit to avoid tracebacks being printed.
|