Simple, easy-to-use loading sequence/progress bar module.
Project description
PyLoadBar
Minimalist load sequence/progress bar module.
About
-
Useful for small intermittant pauses between console text returns, or code actions.
-
Customizable/optional loading and completion messages available to print to console (stdout).
- Loading message defaults to
"Loading..."
. - Completion message defaults to
"Done!"
.
- Loading message defaults to
-
Includes an optional progress meter (simply change the
enable_display: bool
parameter toFalse
if you wish to disable the progress meter), toggled on by default.
Installing PyLoadBar
Using pip
Easiest method. Highly recommended over manual installation.
-
Run the following to install:
pip install PyLoadBar
-
You should now be able to import
PyLoadBar
directly to your application.
Manual Installation
Not recommended.
- Download source code
.zip
archive from the PyLoadBar GitHub releases page and extract contents to desired location.
- OR:
-
Clone repository with the git client of your preference with:
gh repo clone schlopp96/PyLoadBar
-
Navigate to directory containing extracted contents, and open said folder within a terminal.
-
Enter
pip install -r requirements.txt
to install all dependencies for this package. -
Finally, move the
"PyLoadBar-vx.x.x"
directory to your global Python 3rd-party package installation directory to be able to importPyLoadBar
like any other module:"~Python/Lib/site-packages/HERE"
-
Done!
Usage
-
Within a
.py
project, simply import thePyLoadBar
module to start using your custom loading sequence. -
PyLoadBar
is very simple to use.- For example, try running the following:
>>> from PyLoadBar import PyLoadBar
>>> bar = PyLoadBar() # Initialize a new `PyLoadBar` instance.
>>> def add50(x):
bar.load(msg_loading='Adding 50 to x', msg_complete='Okay!', time=30, label='Solving', enable_display=True) # Call `load` method to start loading sequence.
return x + 50
>>> print(add50(50))
- This will return:
Adding 50 to x...
Solving: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 5/5 [00:00<00:00, 8.94it/s].
Okay!
100
-
The loading and loading complete messages can be customized by passing custom strings to the
msg_loading: str
andmsg_complete: str
parameters respectively. -
Note that the progress bar can be toggled using the
enable_display: bool
parameter. -
The time taken to complete the loading sequence can be determined using the
time: int
parameter.- Each unit of time is equivalent to 1/10th of a second.
- Every 10 units = 1 second.
- e.g.
load(time=5)
(default) would take 0.5 seconds to fill the progress bar.
- e.g.
-
You may also label the progress bar with the
label: str
parameter (defaults toNone
). -
Example:
>>> from PyLoadBar import PyLoadBar >>> important_bar = PyLoadBar() # Initialize a new `PyLoadBar` instance. >>> important_bar.load('Important Stuff Happening', 'Day Saved!', 50, 'Saving Day') # Call `load` method to start loading sequence. Important Stuff Happening... Saving Day: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 50/50 [00:05<00:00, 9.19it/s] Day Saved!
Contributing to PyLoadBar
- If you wish to help contribute to this project, please run the following in your virtual env to acquire the necessary dependencies and tools you need to develop and run tests:
pip install PyLoadBar[dev]
Contact
-
If you have any questions, comments, or concerns that cannot be addressed through the project's GitHub repository, please feel free to contact me through my email address:
schloppdaddy@gmail.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for PyLoadBar-0.0.8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 839d927405b72d5bc1ef6596504e801ae08592a61d2d487481e63cfaf7f62c11 |
|
MD5 | c152a255d994e82e21cf07742edab9ae |
|
BLAKE2b-256 | 01424811a1b0404e251b00e2b392dca575757d9807bef33591df8f661d09255f |