This is an easy-to-use implementation of ECDSA cryptography (Elliptic Curve Digital Signature Algorithm), implemented purely in Python. With this library, you can quickly create key pairs (signing key and verifying key), sign messages, and verify the signatures. The keys and signatures are very short, making them easy to handle and incorporate into other protocols.
This package is a Python-based command line interface for processing .bam files with mitochondrial reads and generating high-quality heteroplasmy estimation from sequencing data. The mgatk package places a special emphasis on mitochondrial genotypes generated from single-cell genomics data, primarily mtscATAC-seq, but is generally applicable across other assays.
python-pysox
is a wrapper around the sox
command line tool. The API offers Transformer
and Combiner
classes that allow the user to incrementally build up effects and audio manipulations. python-pysox
also provides methods for querying audio information such as sample rate, determining whether an audio file is silent, and much more.
Xenon is a monitoring tool based on Radon. It monitors code complexity. Ideally, xenon
is run every time code is committed. Through command line options, various thresholds can be set for the complexity of code. It will fail (i.e., it will exit with a non-zero exit code) when any of these requirements is not met.
Scapy is a Python library and executable for interactively manipulating network packets. It can forge or decode packets of a number of protocols, send them on the wire, capture them, store or read them using pcap files, match requests and replies, and so on. It can handle tasks such as scanning, tracerouting, probing, unit tests, attacks or network discovery.
Param is a library for handling all the user-modifiable parameters, arguments, and attributes that control your code. It provides automatic, robust error-checking while dramatically reducing boilerplate code, letting you focus on what you want your code to do rather than on checking for all the possible ways users could supply inappropriate values to a function or class.
Lmfit provides a high-level interface to non-linear optimization and curve fitting problems for Python. It builds on and extends many of the optimization methods of scipy.optimize
. Initially inspired by (and named for) extending the Levenberg-Marquardt method from scipy.optimize.leastsq
, lmfit now provides a number of useful enhancements to optimization and data fitting problems.
python-dpath
is a library for accessing and searching dictionaries via /slashed/paths ala xpath.
Basically it lets you glob over a dictionary as if it were a file system. It allows you to specify globs (ala the bash eglob syntax, through some advanced fnmatch.fnmatch magic) to access dictionary elements, and provides some facility for filtering those results.
Pylru implements a true LRU cache along with several support classes. Pylru provides a cache class with a simple dict interface. It also provides classes to wrap any object that has a dict interface with a cache. Both write-through and write-back semantics are supported. Pylru also provides classes to wrap functions in a similar way, including a function decorator.
This module uses ctypes to access the libmagic file type identification library. It makes use of the local magic database and supports both textual and MIME-type output. Note that this module and the python-file module both provide a "magic.py" file; these two modules, which are different and were developed separately, both serve the same purpose: to provide Python bindings for libmagic.
The aim of Kombu is to make messaging in Python as easy as possible by providing an idiomatic high-level interface for the AMQ protocol, and also provide proven and tested solutions to common messaging problems. AMQP is the Advanced Message Queuing Protocol, an open standard protocol for message orientation, queuing, routing, reliability and security, for which the RabbitMQ messaging server is the most popular implementation.
Blosc is a high performance compressor optimized for binary data. It has been designed to transmit data to the processor cache faster than the traditional, non-compressed, direct memory fetch approach via a memcpy()
system call.
Blosc works well for compressing numerical arrays that contains data with relatively low entropy, like sparse data, time series, grids with regular-spaced values, etc.
This Python package wraps the Blosc library.
This tool provides a Python framework to streamline genomics operations. It offers a direct interface to Ensembl genome assemblies and annotations, while also accommodating custom genomes via FASTA/GTF inputs. The primary objective of pybio is to simplify genome management. It achieves this by providing automatic download of Ensembl genome assemblies and annotation, provides Python genomic feature search and sequence retrieval from the managed genomes, STAR indexing and mapping and more.
In data compression, BCJ, short for Branch-Call-Jump, refers to a technique that improves the compression of machine code of executable binaries by replacing relative branch addresses with absolute ones. This allows a LZMA compressor to identify duplicate targets and archive higher compression rate. BCJ is used in the 7-zip compression utility as the default filter for executable binaries.
pybcj provides Python bindings to a BCJ implementation in C.
SpaCy is a library for advanced Natural Language Processing in Python and Cython. It comes with pretrained pipelines and currently supports tokenization and training for 70+ languages. It features state-of-the-art speed and neural network models for tagging, parsing, named entity recognition, text classification and more, multi-task learning with pretrained transformers like BERT, as well as a production-ready training system and easy model packaging, deployment and workflow management.
Python-evdev provides bindings to the generic input event interface in Linux. The evdev
interface serves the purpose of passing events generated in the kernel directly to userspace through character devices that are typically located in /dev/input/
.
This package also comes with bindings to uinput
, the userspace input subsystem. uinput
allows userspace programs to create and handle input devices that can inject events directly into the input subsystem.
Pyro is a Distributed Object Technology system written in Python that is designed to be easy to use. It resembles Java's Remote Method Invocation (RMI). It has less similarity to CORBA, which is a system and language independent Distributed Object Technology and has much more to offer than Pyro or RMI. Pyro 3.x is no longer maintained. New projects should use Pyro4 instead, which is the new Pyro version that is actively developed.
Keras is a high-level neural networks API, written in Python and capable of running on top of TensorFlow. It was developed with a focus on enabling fast experimentation. Use Keras if you need a deep learning library that:
Allows for easy and fast prototyping (through user friendliness, modularity, and extensibility).
Supports both convolutional networks and recurrent networks, as well as combinations of the two.
Runs seamlessly on CPU and GPU.
Keras is a high-level neural networks API, written in Python and capable of running on top of TensorFlow. It was developed with a focus on enabling fast experimentation. Use Keras if you need a deep learning library that:
Allows for easy and fast prototyping (through user friendliness, modularity, and extensibility).
Supports both convolutional networks and recurrent networks, as well as combinations of the two.
Runs seamlessly on CPU and GPU.
Numba gives you the power to speed up your applications with high performance functions written directly in Python. With a few annotations, array-oriented and math-heavy Python code can be just-in-time compiled to native machine instructions, similar in performance to C, C++ and Fortran, without having to switch languages or Python interpreters.
Numba works by generating optimized machine code using the LLVM compiler infrastructure at import time, runtime, or statically (using the included pycc tool).
OSMnx is a Python library that lets you download geospatial data from OpenStreetMap and model, project, visualize, and analyze real-world street networks and any other geospatial geometries. You can download and model walkable, drivable, or bikeable urban networks with a single line of Python code then easily analyze and visualize them. You can just as easily download and work with other infrastructure types, amenities/points of interest, building footprints, elevation data, street bearings/orientations, and speed/travel time.
This package provides a history of astronomy library. Current Features:
define standard positional numeral systems with standard arithmetics (BasedReal)
set your own precision contexts and algorithms on arithmetical operations (PrecisionContext)
keep track of all operations
build or import ancient astronomical tables
perform arithmetical and statistical operations
support for BasedReal values
define new calendar types
date conversions
collection of mathematical models used for all kinds of geocentric astronomical tables
Fiona is GDAL’s neat and nimble vector API for Python programmers. Fiona is designed to be simple and dependable. It focuses on reading and writing data in standard Python IO style and relies upon familiar Python types and protocols such as files, dictionaries, mappings, and iterators instead of classes specific to OGR. Fiona can read and write real-world data using multi-layered GIS formats and zipped virtual file systems and integrates readily with other Python GIS packages such as pyproj, Rtree, and Shapely.
Mixed sync-async queue, supposed to be used for communicating between classic synchronous (threaded) code and asynchronous (in terms of asyncio) one. Like Janus god the queue object from the library has two faces: synchronous and asynchronous interface. Synchronous is fully compatible with standard queue, asynchronous one follows asyncio queue design.