Execnet provides a share-nothing model with channel-send/receive communication for distributing execution across many Python interpreters across version, platform and network barriers. It has a minimal and fast API targeting the following uses:
distribute tasks to (many) local or remote CPUs
write and deploy hybrid multi-process applications
write scripts to administer multiple environments
python-pymonad
implements data structures typically available in purely functional or functional first programming languages such as Haskell and F#. Included are
Monad and Monoid data types with several common monads such as Maybe and State
Useful tools such as the
@curry
decorator for defining curried functionsType annotations to help ensure correct usage
msgspec
is a fast serialization and validation library, with builtin support for JSON, MessagePack, YAML, and TOML. It includes the following features:
High performance encoders/decoders for common protocols.
Support for a wide variety of Python types.
Zero-cost schema validation using familiar Python type annotations.
A speedy Struct type for representing structured data.
This package provides a Python package to calculate gravitational-wave sensitivity curves for pulsar timing arrays.
Features:
pulsar transmission functions
inverse-noise-weighted transmission functions
individual pulsar sensitivity curves
pulsar timing array sensitivity curves as characteristic strain, strain sensitivity or energy density
power-law integrated sensitivity curves
sensitivity sky maps for pulsar timing arrays
Serpent provides ast.literal_eval()
-compatible object tree serialization. It serializes an object tree into bytes (an utf-8 encoded string) that can be decoded and then passed as-is to ast.literal_eval()
to rebuild the original object tree.
Because only safe literals are encoded, it is safe to send serpent data to other machines, such as over the network.
This is a backport of the standard library typing
module to Python versions older than 3.5. Typing defines a standard notation for Python function and variable type annotations. The notation can be used for documenting code in a concise, standard format, and it has been designed to also be used by static and runtime type checkers, static analyzers, IDEs and other tools.
The COde-independent Organized LEns STandard (COOLEST) defines a set of conventions to be shared across the strong lensing community, in order to consistently store, share and improve lens modeling analyses. In short, this project provides tools to manipulate lens models as a single, human-readable JSON template file alongside Python routines for visualizing and comparing lens models possibly obtained from different modeling codes.
Ray is a unified framework for scaling AI and Python applications. Ray consists of a core distributed runtime and a set of AI libraries for simplifying ML compute. These are the provided Ray AI libraries:
Data: Scalable datasets for ML;
Train: Distributed training;
Tune: Scalable hyperparameter tuning;
RLlib: Scalable reinforcement learning;
Serve: Scalable and programmable serving.
Vulture finds unused code in Python programs. This is useful for cleaning up and finding errors in large code bases. If you run Vulture on both your library and test suite you can find untested code. Due to Python's dynamic nature, static code analyzers like Vulture are likely to miss some dead code. Also, code that is only called implicitly may be reported as unused.
PyVista is...
Pythonic VTK: a high-level API to the Visualization Toolkit (VTK);
mesh data structures and filtering methods for spatial datasets;
3D plotting made simple and built for large/complex data geometries.
This package provides a Pythonic, well-documented interface exposing VTK's powerful visualization backend to facilitate rapid prototyping, analysis, and visual integration of spatially referenced datasets.
SiriLic (SiriL's Interactif Companion) is a software for preparing acquisition files (raw, Biases, Flat and Dark) for processing with SiriL software.
Features:
structuring the SiriL working directory into sub-folders
convert Raw, Biases , Dark or Flat files into SiriL sequence
automatically generate the SiriL script according to the files present and the options
batch process multiple channel and sessions
Plaster is a loader interface around multiple config file formats. It exists to define a common API for applications to use when they wish to load configuration. The library itself does not aim to handle anything except a basic API that applications may use to find and load configuration settings. Any specific constraints should be implemented in a pluggable loader which can be registered via an entrypoint.
Pympler is a development tool to measure, monitor and analyze the memory behavior of Python objects in a running Python application.
By pympling a Python application, detailed insight in the size and the lifetime of Python objects can be obtained. Undesirable or unexpected runtime behavior like memory bloat and other pymples can easily be identified.
A web profiling frontend exposes process statistics, garbage visualisation and class tracker statistics.
This package provides a Python 3 ported version of Python 2.7’s random
module. It has also been back-ported to work in Python 2.6.
In Python 3, the implementation of randrange()
was changed, so that even with the same seed you get different sequences in Python 2 and 3.
This package closes that gap, allowing stable random number generation between the different Python versions.
CoolBox is a toolkit for visual analysis of genomics data. It aims to be highly compatible with the Python ecosystem, easy to use and highly customizable with a well-designed user interface. It can be used in various visualization situations, for example, to produce high-quality genome track plots or fetch common used genomic data files with a Python script or command line, interactively explore genomic data within Jupyter environment or web browser.
The socksio
Python module is a client-side sans-I/O SOCKS proxy implementation. It supports SOCKS4, SOCKS4A, and SOCKS5. socksio
is a sans-I/O library similar to h11
or h2
; this means the library itself does not handle the actual sending of the bytes through the network, it only deals with the implementation details of the SOCKS protocols. It can be paired with any I/O library.
Directory iteration function like os.listdir(), except that instead of returning a list of bare filenames, it yields DirEntry objects that include file type and stat information along with the name. Using scandir() increases the speed of os.walk() by 2-20 times (depending on the platform and file system) by avoiding unnecessary calls to os.stat() in most cases.
This package is part of the Python standard library since version 3.5.
PeachPy is a Python framework for writing high-performance assembly kernels. PeachPy aims to simplify writing optimized assembly kernels while preserving all optimization opportunities of traditional assembly.
PeachPy can generate ELF, MS-COFF, Mach-O object files, and assembly listings for the Go language tool chain; it adapts to different calling conventions and application binary interfaces (ABIs); it takes care of register allocation; it supports x86_64 instructions up to AVX-512 and SHA.
HDBSCAN - Hierarchical Density-Based Spatial Clustering of Applications with Noise. Performs DBSCAN over varying epsilon values and integrates the result to find a clustering that gives the best stability over epsilon. This allows HDBSCAN to find clusters of varying densities (unlike DBSCAN), and be more robust to parameter selection. HDBSCAN is ideal for exploratory data analysis; it's a fast and robust algorithm that you can trust to return meaningful clusters (if there are any).
Pytools is a bag of things that are ``missing'' from the Python standard library:
small helper functions such as
len_iterable
,argmin
, tuple generation, permutation generation, ASCII table pretty printing, GvR'smonkeypatch_xxx
hack, the elusiveflatten
, and much more.Michele Simionato's decorator module
A time-series logging module,
pytools.log
.Batch job submission,
pytools.batchjob
.A lexer,
pytools.lex
.
This package provides wrappers for the commands of Python 3.x such that they can also be invoked under their usual names---e.g., python
instead of python3
or pip
instead of pip3
.
To function properly, this package should not be installed together with the python
package: this package uses the python
package as a propagated input, so installing this package already makes both the versioned and the unversioned commands available.
This package provides wrappers for the commands of Python 3.x such that they can also be invoked under their usual names---e.g., python
instead of python3
or pip
instead of pip3
.
To function properly, this package should not be installed together with the python
package: this package uses the python
package as a propagated input, so installing this package already makes both the versioned and the unversioned commands available.
Netcdf4-python is a Python interface to the netCDF C library. netCDF version 4 has many features not found in earlier versions of the library and is implemented on top of HDF5. This module can read and write files in both the new netCDF 4 and the old netCDF 3 format, and can create files that are readable by HDF5 clients. The API is modelled after Scientific.IO.NetCDF
, and should be familiar to users of that module.
MPI for Python (mpi4py) provides bindings of the Message Passing Interface (MPI) standard for the Python programming language, allowing any Python program to exploit multiple processors.
mpi4py is constructed on top of the MPI-1/MPI-2 specification and provides an object oriented interface which closely follows MPI-2 C++ bindings. It supports point-to-point and collective communications of any picklable Python object as well as optimized communications of Python objects (such as NumPy arrays) that expose a buffer interface.