User Query Class¶
Prompts for user interaction on the command line and stores the user’s response.
Interface¶
-
class
pysk.utils.UserQuery(replies={'y': 'yes', 'n': 'no'}, maxRetries=10, defaultMessage='Proceed ?')¶ Query user via stdout
Parameters: - replies (
dict) – Dictionary of allowed replies, with reply letter as key and description as value. - maxRetries (int) – Number of allowed retries.
- defaultMessage (str) – Message supplied to user.
-
__call__(message=None, selection=None, retries=None)¶ Get response from user
Prints message to
stdoutand returns the first valid user reply.Parameters: - message (str) – Message to forward to user. Defaults to standard message set in constructor
- selection (iterable) – Subset of reply keys passed to constructor via replies
- retries (int) – Maximum number of retries. Defaults to maxRetries set in constructor.
Returns: User response
- Raise:
IOErrorif maximum number of retries is exceeded.
-
iterOptions(selection=None)¶ Iterate over possible options
Parameters: selection (iterable) – Subset of replies defined in self.replies. Defaults to all known replies.Yields: Option description with associated key
- replies (