Python package with widget to simplify work with many processes in jupyter
Project description
Overview.
This is a library which helps working with many processes in a jupyter notebook in a very simple way.
Installation via pip:
pip install jupyter_process_manager
Usage examples
Lets say that you want to run some function defined in file test_function.py
with different arguments as separate processes and have control over them.
# In the file test_function.py
def test_just_wait(int_seconds, test_msg=""):
if test_msg:
print(test_msg)
for int_num in range(int_seconds):
print(int_num)
sleep(1)
Then to run it you just need to do the following:
from jupyter_process_manager import JPM
# OR from jupyter_process_manager import JupyterProcessManager
from .test_function import test_just_wait
# Create an object which will be handling processes
process_manager = JPM(".")
for seconds_to_wait in range(5, 30, 5):
process_manager.add_function_to_processing(
test_just_wait,
seconds_to_wait,
test_msg="hi" * seconds_to_wait
)
All the processes were started and now you can check what is happening with them
WARNING: Please do NOT try to use functions defined inside jupyter notebook, they won’t work.
Show processes output as widget
process_manager.show_jupyter_widget(
int_seconds_step=2,
int_max_processes_to_show=20
)
JPM arguments
str_dir_for_output: Directory where to store processes output
is_to_delete_previous_outputs=True: Flag If you want to delete outputs for all previous processes in the directory
Usual print output
process_manager.wait_till_all_processes_are_over(int_seconds_step=2)
How to Debug
# arguments are the same as in **add_function_to_processing(...)**
process_manager.debug_run_of_1_function(func_to_process, *args, **kwargs)
Links
Project local Links
Contacts
License
This project is licensed under the MIT License.
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
Close
Hashes for jupyter_process_manager-0.1.11.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 623f4b5717a8e96b0d107d6f5bc547fb1da46edf95ebeb94692eb36bf0f65233 |
|
MD5 | ab086f5bf0dcaa5459824d2a300f6fd5 |
|
BLAKE2b-256 | 553c17a704e47919114926fd05c33c9a718c60d626b2cdc306249427b5ca53e9 |