Skip to main content

Some console tools for inputs and outputs

Project description

PyConsoleIOTools

Build Status PyPI - Downloads GitHub release GitHub license

Installation

pip install consoleiotools  # install
pip install --upgrade consoleiotools  # update

Get Started

import consoleiotools as cit
print(cit.__version__)

Prints on Screen

>>> cit.start()
*

>>> cit.title('Session Name')
| __SESSION NAME__________________________

>>> cit.echo('Hello World')
| Hello World

>>> cit.echo('Hello World', pre='say')
| (Say) Hello World

>>> cit.ask('Hello World')
| (?) Hello World

>>> cit.info('Hello World')
| (Info) Hello World

>>> cit.warn('Hello World')
| (Warning) Hello World

>>> cit.err('Hello World')
| (Error) Hello World

>>> cit.dim('Hello World')
| Hello World  # gray

>>> cit.end()
`

>>> cit.br()
# blank line

>>> cit.br(2)
# blank line
# blank line

Get User Input

>>> cit.get_input()
> Hello World
'Hello World'

>>> cit.get_choice(['Apple', 'Google'])  # Enter number to select.
|  1) Apple
|  2) Google
> 2
'Google'

>>> cit.get_choice(['Apple', 'Google'])  # Enter string is ok too.
|  1) Apple
|  2) Google
> Google
'Google'

>>> cit.get_choice(['Apple', 'Google'], exitable=True)  # Add a choice of exit in menu.
|  0) ** EXIT **
|  1) Apple
|  2) Google
> 0
None

>>> cit.get_choices(['Apple', 'Google'])  # Multiple Selection
|  1) [ ] Apple
|  2) [ ] Google
> 1  # Enter number to check or uncheck selections
|  0) ** DONE **
|  1) [+] Apple
|  2) [ ] Google
> Google  # Enter string is ok too.
|  0) ** DONE **
|  1) [+] Apple
|  2) [+] Google
> 0  # Enter 0 when done.
['Apple', 'Google']  # return [] is no selections.

>>> cit.get_choices(['Apple', 'Google'], allable=True)  # Add a choice of select all in menu.
|  1) [ ] Apple
|  2) [ ] Google
|  a) ** ALL **
> a  # Enter `a` to check all. If `a` is in choices, enter `all`.
|  0) ** DONE **
|  1) [+] Apple
|  2) [+] Google
|  a) ** ALL **
> 0
['Apple', 'Google']

>>> cit.get_choices(['Apple', 'Google'], exitable=True)  # Add a choice of exit in menu.
|  0) ** EXIT **
|  1) [ ] Apple
|  2) [ ] Google
> 0
[]  # Empty list returned.

File IO

>>> cit.read_file('/path/to/file')
'File contents'

>>> cit.read_file('/path/to/file', with_encoding=True)
('File contents', 'utf-8')

>>> cit.write_file('/path/to/file', 'Contents')  # Append content to file.
8  # writed bytes

>>> cit.write_file('/path/to/file', 'Contents', overwrite=True)  # Overwrite if file exists.
8  # writed bytes

Controls

>>> cit.pause()
Press Enter to Continue...

>>> cit.bye()
# exit

>>> cit.bye(0)
# exit with code 0

>>> cit.bye('Seeya')
Seeya
# exit

Decorators

@cit.as_session('Hello')
def my_func():
    cit.echo('World')

>>> my_func()
*
| __HELLO__________________________
| World
`

@cit.as_session
def underscore_orCamel():
    pass

>>> underscore_orCamel()
*
| __UNDERSCORE OR CAMEL__________________________
`

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

consoleiotools-2.8.3.tar.gz (5.1 kB view hashes)

Uploaded Source

Built Distribution

consoleiotools-2.8.3-py3-none-any.whl (5.1 kB view hashes)

Uploaded Python 3

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