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.
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.
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.
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.
A wheel is a ZIP-format archive with a specially formatted filename and the .whl
extension. It is designed to contain all the files for a PEP 376 compatible install in a way that is very close to the on-disk format. Many packages will be properly installed with only the Unpack
step and the unpacked archive preserves enough information to Spread
(copy data and scripts to their final locations) at any later time. Wheel files can be installed with a newer pip
or with wheel's own command line utility.
This Python library provides functionality for communicating with a Fast IDentity Online (FIDO) device over Universal Serial Bus (USB) as well as verifying attestation and assertion signatures. It aims to support the FIDO Universal 2nd Factor (U2F) and FIDO 2.0 protocols for communicating with a USB authenticator via the Client-to-Authenticator Protocol (CTAP 1 and 2). In addition to this low-level device access, classes defined in the fido2.client
and fido2.server
modules implement higher level operations which are useful when interfacing with an Authenticator, or when implementing a Relying Party.
This is an extended version of the Python built-in glob module which adds:
The ability to capture the text matched by glob patterns, and return those matches alongside the file names.
A recursive
**
globbing syntax, akin for example to theglobstar
option of Bash.The ability to replace the file system functions used, in order to glob on virtual file systems.
Compatible with Python 2 and Python 3 (tested with 3.3).
Glob2 currently based on the glob code from Python 3.3.1.
BBKNN is a batch effect removal tool that can be directly used in the Scanpy workflow. It serves as an alternative to scanpy.api.pp.neighbors()
, with both functions creating a neighbour graph for subsequent use in clustering, pseudotime and UMAP visualisation. If technical artifacts are present in the data, they will make it challenging to link corresponding cell types across different batches. BBKNN actively combats this effect by splitting your data into batches and finding a smaller number of neighbours for each cell within each of the groups. This helps create connections between analogous cells in different batches without altering the counts or PCA space.
green
is a Python test runner that describes itself as:
- Clean
Low redundancy in output. Result statistics for each test is vertically aligned.
- Colorful
Terminal output makes good use of color when the terminal supports it.
- Fast
Tests run in independent processes (one per processor by default).
- Powerful
Multi-target and auto-discovery support.
- Traditional
It uses the normal
unittest
classes and methods.- Descriptive
Multiple verbosity levels, from just dots to full docstring output.
- Convenient
Bash-completion and ZSH-completion of options and test targets.
- Thorough
Built-in integration with coverage.