Lazy multiprocess your callables in three extra characters
Lazy multi-process your callables in three extra characters
Built by Guillaume Schworer. Licensed under the GNU General Public License v3 or later (GPLv3+) license (see LICENSE).
pip install binge
to get the most recent stable version.
The only entry point is the binge.B classe. You’ll just use it like this:
> import time > from binge import B > def f(x, a=2): > time.sleep(1) > return x*a # normal call > [f(x) for x in range(4)] [0, 2, 4, 6] # takes 4 seconds to run # binged call, using 3 extra characters: `B`, `(`, and `)` > B(f)([x for x in range(4)]) [0, 2, 4, 6] # takes 1 second to run on 4 CPUs # and if you're very lazy, you could even call > B(f)(range(4)) # and what about the `a` parameter? - too easy > B(f)(range(4), 3) [0, 3, 6, 9] # and guess what also works? > B(f)(range(4), a=[1,2,3,6]) [0, 2, 6, 18]
More usage details, see example.py
All the options are documented in the docstrings for the B classes. These can be viewed in a Python shell using:
from binge import B print(B.__doc__)
or, in IPython using:
from binge import B B?
Copyright 2018 Guillaume Schworer
binge is free software made available under the GNU General Public License v3 or later (GPLv3+) license (see LICENSE).
- Initial release
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size binge-0.1.1.tar.gz (7.4 kB)||File type Source||Python version None||Upload date||Hashes View|