Skip to main content

flp

Fluent LINQ for Python – flip your iterables

flp brings a LINQ-inspired fluent API to standard Python iterables with full static typing.

⚡ Key Features

  • ⚡ Lazy Evaluation (FlpIt): Deferred execution using Python iterators and generators.
  • 📦 Materialized Container (FlpList): Eager, mutable container backed by collections.UserList.
  • 🔹 Static-First Typing: Built for full mypy and pyright inference without plugins.
  • 🔄 No Implicit Caching: Query results are not cached unless explicitly documented, such as order_by.

⚙️ Installation

uv add flpit

💡 Quick Start

import flp
from flp import FlpIt, FlpList

# Deferred iterable via shorthand
data: FlpIt[int] = flp.it([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

# Deferred / lazy pipeline
query: FlpIt[int] = (
    data
    .where(lambda x: x % 2 == 0)
    .select(lambda x: x * 10)
)

# Materialize query results explicitly
result: FlpList[int] = query.to_list()  # [20, 40, 60, 80, 100]

# Or start directly with an eager container
eager_list: FlpList[int] = flp.lst([1, 2, 3, 4])

📜 License

Distributed under the MIT License. See LICENSE for more information.

Release files for flpit 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for flpit 0.1.1
File Size Uploaded
flpit-0.1.1.tar.gz 7.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for flpit 0.1.1
File Interpreter ABI Platform
flpit-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 16.3 kB

Release files / flpit-0.1.1.tar.gz

Download URL flpit-0.1.1.tar.gz
Size 7.6 kB
Tags Source
SHA-256 checksum
How to use checksums
545853e242726f6c2e38750f49a1c3dfa23c5cda3e8e96991c010f4b6985ac7f
BLAKE2b-256 checksum
How to use checksums
12c10cf4572c402f418e64d9159d549b90c854b7f612f716765c2d2c1cba4e9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / flpit-0.1.1-py3-none-any.whl

Download URL flpit-0.1.1-py3-none-any.whl
Size 8.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fe417d07082d024156d9613a6f4ff4c435a33928c9b5009199b60fc3123b3ac5
BLAKE2b-256 checksum
How to use checksums
eb9f0723ea76f124e33066e4e1f0de690e0fee0e6db62fab2f23c0d687fc8453
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.10 {"installer":{"name":"uv","version":"0.12.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page