An easy-to-use and colorful progress bar for python.
Project description
Pyprobar
A beautiful , fast, easy-to-use progress bar for python.
Installation
pip install pyprobar
nightly version:
python setup.py install
Synopsis
28.71% |████████>>>>>>>>>>>>>>>>> | 0:00:22|0:00:31 ETC: 05-20 18:08:15
Performance
from pyprobar import probar
from tqdm import tqdm
import progressbar
N = 10000000
print("probar:")
for i in probar(range(N)):
pass
print("bar:")
for idx,i in probar(range(N)):
bar(idx, N)
print("tqdm:")
for i in tqdm(range(N)):
pass
print("progressbar:")# progressbar2
for i in progressbar.progressbar(range(N)):
pass
probar:
100.00%|█████████████████████████████| 0:00:00|0:00:02 ETC: 06-07 12:08:03
bar:
100.00%|█████████████████████████████| 0:00:00|0:00:03 ETC: 06-07 12:11:15
tqdm:
100%|██████████| 10000000/10000000 [00:03<00:00, 2634907.84it/s]
progressbar:
100% (10000000 of 10000000) |############| Elapsed Time: 0:00:46 Time: 0:00:46
Usage
Use probar
or bar
for different situations:
probar
:
from pyprobar import bar, probar
import time
for idx, x in probar(range(1234), enum=True):
time.sleep(0.02)
>>> 18.31%|█████>>>>> | 0:00:20|0:00:25 ETC: 05-20 19:00:39
Or used in List comprehensions:
res = [i for i in probar(range(10))]
print(res)
>>> 100.00%|███████████████████████████| 0:00:00|0:00:00 ETC: 05-20 12:14:33
>>> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
bar
:
import numpy as np
N = 1024
a = np.linspace(2, 5, N)
for idx, i in enumerate(a):
time.sleep(0.01)
bar(idx, N)
>>> 100.00% |███████████████████████████| 0:00:00|0:00:10 ETC: 05-20 20:33:34
You can set your own progress bar by using the parameters symbol_1
and symbol_2
:
for i in probar(range(1234), symbol_2="o"):
time.sleep(0.01)
>>> 23.10%|██████ooooooooooooooooooo | 0:00:10|0:00:14 ETC: 05-20 17:29:57
Tip: Searchcharmap
in win10 start menu, you can find a lot of interesting characters.
Supports progress bars in different colors:
for idx, i in enumerate(a):
bar(idx, N, color='1') # `color` options: '1','2','3','4','5','0','update_random'
time.sleep(0.01)
Of course, you can also add text or variables to the progress bar:
for idx, i in enumerate(a):
text = f"what you want see is {x}"
bar(idx, N, text=text)
multi-line text :
for idx, i in enumerate(a):
text = f"{v1}, frame:{idx}\n"
bar(idx, N, text=text)
print RGB color string:
from pyprobar.styleString import rgb_str
text = rgb_str("I'm green!", RGB_fore=[0,255,0])
print(text)
TODO
- Thread problem in jupyter notebook
- Speed of information
- Multithreading
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
File details
Details for the file pyprobar-0.1.1.8.tar.gz
.
File metadata
- Download URL: pyprobar-0.1.1.8.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
bffe3bbac9db01fff0f814ffa7da8cdf4cc3c225649724e9cf9c108e0e465e9f
|
|
MD5 |
27c531962a7da0a1d36b066ca41d292f
|
|
BLAKE2b-256 |
d43b080b1bdc33ae5d0716a66ea05bdc2be8ad90022d4303650a07846e746e03
|
File details
Details for the file pyprobar-0.1.1.8-py3-none-any.whl
.
File metadata
- Download URL: pyprobar-0.1.1.8-py3-none-any.whl
- Upload date:
- Size: 15.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
7f2b615749e5465837e62ffb78ca589df08c90a69106a23bababd99df8ce6b24
|
|
MD5 |
c6e050b8de09f11b47137c5064c59112
|
|
BLAKE2b-256 |
9757c7594f7ed71f061c542ee23a1c06ceed307fd1fbf74d37404c9043af7c30
|