Kind of like a non intrusive addon for the standard input()
Project description
InputPowertools
Eliminate the annoyances of getting input or building a cli in python!
Prolog
I love using command line interfaces and I think most people like building these small tools as well, but its really annoying to have to build the interface between the user and your program, hence I build this python package to take care of this part for you.
Examples
Intro
Alpha
>>> print(f"Result: {input('Type your name:', Mode.ALPHA)}")
Type your name: >? 123
🛑 Please enter a value that is completely alphabetic (no punctuation, numbers, emojis or nothing)...
Type your name: >? Malte
Result: Malte
Numeric
>>> print(f"Result: {input('How old are you:', Mode.NUMERIC, domain=lambda x: x % 1 == 0)}")
How old are you: >? 😀
🛑 Please enter a number...
How old are you: >? 13.5
🛑 Please enter a value that fits the answers domain...
How old are you: >? 16
Result: 16
Options
>>> print(f"Result: {input(
'Are you a what kind of person are you?',
Mode.OPTIONS,
options=['Cat person', 'Dog person', 'Bird person']
)}")
Are you a what kind of person are you?
1 -> Cat person
2 -> Dog person
3 -> Bird person
Select option [1-3]: >? Though question
🛑 Please enter a number...
Select option [1-3]: >? 0
🛑 Please enter a value that fits the answers domain...
Select option [1-3]: >? 4
🛑 Please enter a value that fits the answers domain...
Select option [1-3]: >? 2
Result: (1, 'Dog person')
Defaults
Just pressing enter
>>> print(f"Result: {input('Type your name:', Mode.ALPHA, default='Hannes')}")
Type your name: (Hannes) >?
Result: Hannes
Typing something else
>>> print(f"Result: {input('Type your name:', Mode.ALPHA, default='Hannes')}")
Type your name: (Hannes) >? Malte
Result: Malte
Confirm
>>> print(f"Result: {input('Type your name:', Mode.ALPHA, confrim=True)}")
Type your name: >? Malte
Do you want to select "Malte"?
1 -> yes
2 -> no
Select option [1-2]: (2) >? 1
Result: Malte
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
InputPowertools-0.1.tar.gz
(6.4 kB
view hashes)
Built Distribution
Close
Hashes for InputPowertools-0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aadd865f0e78d5d72cb649751ecaed6ca2b5c98b7ae056444ee19d69292db5dc |
|
MD5 | 08d27c6b1e3fcdf37cd144a6f240b2d8 |
|
BLAKE2b-256 | 105d866f15733c99d872df2ab604988a1b0de16356e55fa69161f1c38b090966 |