Skip to main content

A non-intrusive Python pipeline.

Project description

Pipe.py

A non-intrusive Python pipeline.

There are only pipeline. If you want more functional tools, you should look for another library.

Install

pip install only-pipe

Or fetch from github

pip install git+https://github.com/abersheeran/only-pipe

Usage

Use pipeline to pass data as a positional parameter to the next function:

from pipe import F

range(10) | F(filter, lambda x: x % 2) | F(sum) == 25

Or you need to pass multiple parameters through the pipeline:

from pipe import FF


def get_data():
    return 1, 2


get_data() | FF(lambda x, y: x + y) == 3

Use alias like follow code, you can use map/filter/reduce more conveniently:

from functools import reduce
from pipe import F

Filter = F(F, filter)
Map = F(F, map)
Reduce = F(F, reduce)

range(100) | Filter(lambda x: x % 2) | Map(lambda x: x * x) | Reduce(lambda x, y: x + y)

Set Global

Maybe you don't want to use from pipe import F in every file of the entire project, you can use the following code to set it as a global function, just like min/max/sum.

import pipe

pipe.set_global(pipe.F, pipe.FF)

Maybe you also want to expose functools.reduce to the world, just like map/filter.

import pipe
import functools

pipe.set_global(pipe.F, pipe.FF, functools.reduce)

More

No more ~ This library has less than ten lines of valid code, but it is very effective.

If you like it, please give a Star. 😀

This repository is released under the MIT. Do what you want!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

only-pipe-2.0.0.tar.gz (2.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

only_pipe-2.0.0-py2.py3-none-any.whl (3.1 kB view details)

Uploaded Python 2Python 3

File details

Details for the file only-pipe-2.0.0.tar.gz.

File metadata

  • Download URL: only-pipe-2.0.0.tar.gz
  • Upload date:
  • Size: 2.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for only-pipe-2.0.0.tar.gz
Algorithm Hash digest
SHA256 c39b1faa1acb2be4d6390c853af307343531ecff52d260bd116ddc54f73ee31b
MD5 88b70f91a2262f6529bd5757eb8ab022
BLAKE2b-256 0b77d53c65f500b2fc36a282b93115a264c92e0b9615521281cf374e7aca8c76

See more details on using hashes here.

File details

Details for the file only_pipe-2.0.0-py2.py3-none-any.whl.

File metadata

  • Download URL: only_pipe-2.0.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 3.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for only_pipe-2.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e9ad4dbcbafefe06ae03b7f0e8eba1b4dd718910a3266d51fbe7088a04fd1ed3
MD5 3fb98083aa13b73efd59af3a7c2cafe6
BLAKE2b-256 ac8024ea3fd2f0258e5e70a54edd3f6be39de75b9286f6cef2bdab912a24ce7c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page