Metadata-Version: 2.4
Name: pytools
Version: 2025.2.5
Summary: A collection of tools for Python
Project-URL: Documentation, https://documen.tician.de/pytools/
Project-URL: Homepage, https://github.com/inducer/pytools/
Author-email: Andreas Kloeckner <inform@tiker.net>
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Other Audience
Classifier: Intended Audience :: Science/Research
Classifier: Natural Language :: English
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Information Analysis
Classifier: Topic :: Scientific/Engineering :: Mathematics
Classifier: Topic :: Scientific/Engineering :: Visualization
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Requires-Dist: platformdirs>=2.2
Requires-Dist: siphash24>=1.6
Requires-Dist: typing-extensions>=4.5
Provides-Extra: numpy
Requires-Dist: numpy>=1.6; extra == 'numpy'
Provides-Extra: test
Requires-Dist: basedpyright; extra == 'test'
Requires-Dist: optype; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: ruff; extra == 'test'
Description-Content-Type: text/x-rst

Pytools: Lots of Little Utilities
=================================

.. image:: https://gitlab.tiker.net/inducer/pytools/badges/main/pipeline.svg
    :alt: Gitlab Build Status
    :target: https://gitlab.tiker.net/inducer/pytools/commits/main
.. image:: https://github.com/inducer/pytools/actions/workflows/ci.yml/badge.svg
    :alt: Github Build Status
    :target: https://github.com/inducer/pytools/actions/workflows/ci.yml
.. image:: https://badge.fury.io/py/pytools.svg
    :alt: Python Package Index Release Page
    :target: https://pypi.org/project/pytools/
.. image:: https://zenodo.org/badge/1575270.svg
    :alt: Zenodo DOI for latest release
    :target: https://zenodo.org/badge/latestdoi/1575270

Pytools is a big bag of things that are "missing" from the Python standard
library. This is mainly a dependency of my other software packages, and is
probably of little interest to you unless you use those. If you're curious
nonetheless, here's what's on offer:

* A ton of small tool functions such as ``len_iterable``, ``argmin``,
  tuple generation, permutation generation, ASCII table pretty printing,
  GvR's ``monkeypatch_xxx()`` hack, the elusive ``flatten``, and much more.
* Batch job submission, ``pytools.batchjob``.
* A lexer, ``pytools.lex``.
* A persistent key-value store, ``pytools.persistent_dict``.

Links:

* `Documentation <https://documen.tician.de/pytools>`__
* `Github <https://github.com/inducer/pytools>`__
* ``pytools.log`` has been spun out into a separate project,
  `logpyle <https://github.com/illinois-ceesd/logpyle>`__.
