A python library for creating a CLI with custom commands and parameters
Project description
Python-CLI
A Command Line Interface library for Python
Installation:
To use the library, just download the CLI.py file and drop it in to you'r working folder
When using microPython, copy the CLI.py file from the microPython folder
How to use:
-
Import the necessary classes and enums:
from CLI import CLI, Command, Parameter, DataType
-
Define your custom functions that will be executed when a command is called. For example:
def testFunction(params): print("testFunction") for param in params: print(f"\t{param}")
-
Create instances of the
Commandclass for each command you want to add. For example:command1 = Command("test1", "test1 description", testFunction, [Parameter("param1", "param1 description",DataType.STRING), Parameter("param2", "param2 description", DataType.INTEGER)] )
-
Optionally, define more custom functions and create additional
Commandinstances. -
Create an instance of the
CLIclass, passing in the name, description, and a list of commands. For example:cli = CLI("Test CLI", "Test CLI description", [command1, command2])
-
Print the header of the CLI using the
printHeader()method:cli.printHeader()
-
Enter a loop to continuously accept user commands using the
newCommand()method:while True: cli.newCommand()
How to use:
from CLI import CLI, Command, Parameter, DataType
def testFunction(params):
print("testFunction")
for param in params:
print(f"\t{param}")
command1 = Command("test1", "test1 description", testFunction, [Parameter("param1", "param1 description", DataType.STRING), Parameter("param2", "param2 description", DataType.INTEGER)])
def testFunction2(params):
print("testFunction2")
for param in params:
print(f"\t{param.name} - {param.dataType.value} - {param.value}")
command2 = Command("test2", "test2 description", testFunction2, [Parameter("param1", "param1 description", DataType.STRING), Parameter("param2", "param2 description", DataType.INTEGER)])
cli = CLI("Test CLI", "Test CLI description", [command1, command2])
cli.printHeader()
while True:
cli.newCommand()
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file custCLI-0.1.0-py3-none-any.whl.
File metadata
- Download URL: custCLI-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52f2ccccb63ec28d4f25d24619e3b7c841ebe6eebfff67ebeed5de82afff9e31
|
|
| MD5 |
af12cfc9eeffc5dc6ea8524dce2328bc
|
|
| BLAKE2b-256 |
479649cb2713d62a3b96bfc8d31438d3f2927a1b1b44f441af228232272c90f9
|