Skip to main content

Framework for generating formatted user input questions.

Project description

MultiChoice

A framework for generating well formatted user input queries in the terminal.

Table of Contents

  • API Documentation
    • Question: Fill-in-the-blank
    • TrueFalse: True or False
    • MultiChoice: Multiple Choice
  • Developer Log

API Documentation

Class: Question

Question(query)

Question: Generates fill in the blank style questions.

__call__(self)

  • Return: String. Returns the user selection.

__init__(self, query, required=True, cursor='>>>')

  • Param query: String.
    • Question for the user.
  • Param required: Optional Bool. Default=True
    • True: Repeats question until answered.
    • False: Accepts null input as an empty string.
  • Param cursor: Optional String. Default='>>>'
    • Indicates user input field.

Question Example

from MultiChoice import Question


get_name = Question("What is your name?")  # setup
user = get_name()                          # get input
print(user)                                # print
What is your name?
>>> Robert
Robert

Class: TrueFalse

TrueFalse(query)

TrueFalse: Generates True or False style questions.

__call__(self)

  • Return: String. Returns the user selection.

__init__(self, query, required=True, cursor='>>>')

  • Param query: String.
    • Question for the user.
  • Param required: Optional Bool. Default=True
    • True: Repeats question until answered.
    • False: Accepts null input as an empty string.
  • Param cursor: Optional String. Default='>>>'
    • Indicates user input field.

TrueFalse Example

from MultiChoice import TrueFalse


question = TrueFalse("True or False: Python3 is the best!")
answer = question()
print(answer)
True or False: Python3 is the best!
1. True
2. False
>>> 1
True

Class: MultiChoice

MultiChoice(query, options)

MultiChoice: Generates multiple choice style questions.

__call__(self)

  • Return: String. Returns the user selection.

__init__(self, query, options, required=True, strict=True, cursor='>>>')

  • Param query: String.
    • Question for the user.
  • Param options: Tuple of Strings.
    • Options presented to the user as a numbered sequence.
    • Numbers are generated automatically.
    • The user may enter an answer as text or one of the numbers.
  • Param required: Optional Bool. Default=True.
    • True: Repeats question until answered.
    • False: Accepts null input as an empty string.
  • Param strict: Optional Bool. Default=True.
    • True: Answer must be in the options tuple. Not case-sensitive.
    • False: Accepts any answer.
  • Param cursor: Optional String. Default='>>>'
    • Indicates user input field.

MultiChoice Example

from MultiChoice import MultiChoice


question = MultiChoice(
    "What is your favorite color?\n"
    "You must choose one of the following:",
    options=("Red", "Orange", "Yellow", "Green", "Blue", "Purple"),
)
answer = question()
print(answer)
What is your favorite color?
You must choose one of the following:
1. Red
2. Orange
3. Yellow
4. Green
5. Blue
6. Purple
>>> blue
Blue

Developer Log

MultiChoice v0.3.5

  • TrueFalse update, removed strict option - T/F is always strict.

MultiChoice v0.3.4

  • Installer Bug Fixed

MultiChoice v0.3.3

  • Comments Updated

MultiChoice v0.3.2

  • Examples Added

MultiChoice v0.3.1

  • Added Cursor Option

MultiChoice v0.2 (internal)

  • API Updated

MultiChoice v0.1

  • Initial Upload

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

MultiChoice-0.3.5.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

MultiChoice-0.3.5-py3-none-any.whl (3.2 kB view details)

Uploaded Python 3

File details

Details for the file MultiChoice-0.3.5.tar.gz.

File metadata

  • Download URL: MultiChoice-0.3.5.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.8.0

File hashes

Hashes for MultiChoice-0.3.5.tar.gz
Algorithm Hash digest
SHA256 7ccd1ce6fb8029f40cdd30003bf6abbcc2f1901a956a47d6f80aa8709a101862
MD5 77bd578ae4af1e76eae14a0654774ffc
BLAKE2b-256 37ad301f83cdfba76ad917e0431497ad6837b82c3587e7ea375b0df2cb8a629c

See more details on using hashes here.

File details

Details for the file MultiChoice-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: MultiChoice-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 3.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.8.0

File hashes

Hashes for MultiChoice-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 dc7ecaa0e29bfade01ad659baa1167f7757f358cbfd29282170ab1c1bd3756af
MD5 551590b7e5acc7566eaa1c9259489c5f
BLAKE2b-256 e3aa8b4a7aa50d445537181716c5798c61aeaabe3e3997617440df3a93841de8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page