Replace common looping boilerplate with pretty method chaining.
Project description
Welcome to loop
Replace common looping boilerplate with pretty method chaining.
Installation
pip install loop-python
Documentation
Visit the documentation site.
Example
Loop over range(20)
, apply the fibo()
function and then, on top of it, apply the fizzbuzz()
function, finally, apply print()
:
from loop import loop_over
def fizzbuzz(x):
rules = {3: 'fizz', 5: 'buzz'}.items()
res = ''.join(word for div, word in rules if x%div == 0)
return res if res else x
def fibo(x):
a, b = 1, 1
for _ in range(1, x):
a, b = b, a + b
return b
loop_over(range(20)).map(fibo).map(fizzbuzz).map(print).exhaust()
Will produce the following output:
1
1
2
fizz
buzz
8
13
fizz
34
buzz
89
fizz
233
377
buzz
fizz
1597
2584
4181
fizzbuzz
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
loop-python-0.2.0.tar.gz
(8.7 kB
view details)
Built Distribution
File details
Details for the file loop-python-0.2.0.tar.gz
.
File metadata
- Download URL: loop-python-0.2.0.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e04582682667c2219c3af298fc631a4cce6d27272c9d0fdfa0f85a330ebf20c |
|
MD5 | 6743ea79224be179b6148bb90485471c |
|
BLAKE2b-256 | 989215d84f5e550519ea780dd23a7cf840b17d27862fe95f4b1d1cb360e428f5 |
File details
Details for the file loop_python-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: loop_python-0.2.0-py3-none-any.whl
- Upload date:
- Size: 4.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/4.0.2 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fadef9efcb2aeed228f3539abaefb6ac392ebc73888480ab9e17f5f69e7590e2 |
|
MD5 | 863c9dc77e2ef319e488fcb37cde2b8c |
|
BLAKE2b-256 | 8506060b3e4dd66d004970cffb586dd6300edad9eb9f5d1d546e48d11a04156a |