Skip to main content

A collection of small useful helpers.

Project description

Personal collection of helpers and often-useful snippets for Python

Install the latest version with pip install -U “git+https://gitlab.com/hoverhell/pyaux.git#egg=pyaux”

Contains:

  • window: iterator over a ‘window’ of N adjacent elements

  • dotdict: attr→item dict subclass (e.g. for d.key instead of d[‘key’])

  • DebugPlug: recursive duck-object for debug and testing purposes

  • repr_call: convenient syntactically-appropriate representation of call arguments (also used in DebugPlug)

  • fxrange, frange, dxrange, drange: xrange() / range() equivalents for float (without error accumulation) and Decimal

  • dict_fget, dict_fsetdefault: versions of dict.get and dict.setdefault with lazy-computation of the default value

  • split_list: simple one-pass splitting of list into two by a condition

  • use_cdecimal: forced instance-wide use (by monkey-hack) of cdecimal instead of decimal (for performance)

  • use_exc_ipdb: set unhandled exception handler to run ipdb.pm()

  • use_exc_log: set unhandled exception handler to log (by logging) the exception and the stack trace including (when possible) the local variables.

  • use_colorer: monkey-patch logging for colored logging

  • obj2dict: recursive converter of tree-structure of classes into a tree-structure of dicts, e.g. for pretty-printing the result

  • mk_logging_property: make a property that debug-logs the value and caller info when set

  • Some other things that are too minor to be listed here.

Also, in separate submodules:

  • psql: helpers for saving Django ORM objects into an SQL ‘COPY’-like file and loading it in one SQL command (for high-performance loading of large amounts of data into the database)

  • lzmah: lzma compress (as function and as an executable file); also provides a function unjsllzma to stream-read (json) lines from a pylzma-compressed file

  • lzcat: lzcat for pylzma-specific format (as function and as an executale file)

  • runlib: various things for runscripts:

    • init_logging: logging.basicConfig with useful defaults (for development runscripts).

    • sigeventer: list-based signal handler for SIGINT and SIGTERM (for appending handler functions, similarly to atexit)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyaux-4.0.0.tar.gz (86.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyaux-4.0.0-py3-none-any.whl (97.5 kB view details)

Uploaded Python 3

File details

Details for the file pyaux-4.0.0.tar.gz.

File metadata

  • Download URL: pyaux-4.0.0.tar.gz
  • Upload date:
  • Size: 86.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for pyaux-4.0.0.tar.gz
Algorithm Hash digest
SHA256 340b295e2c083f985ca7e47421ce6d688a30e147595b93acf1053b93b67eaec5
MD5 4b6bf5ccf679958799a718323a54dc20
BLAKE2b-256 9a6af8b41da9975a65af6574c6dcd6b9d2b2e6bafcc4f0807eb69140861819bc

See more details on using hashes here.

File details

Details for the file pyaux-4.0.0-py3-none-any.whl.

File metadata

  • Download URL: pyaux-4.0.0-py3-none-any.whl
  • Upload date:
  • Size: 97.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for pyaux-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 586ee1ee6a79c49bba5c3b16ea9ddeb49034da0c16ef8266045b9f388f5108a8
MD5 bdc7c826936c39f64da89e2c835e9096
BLAKE2b-256 617bfdc5e3033fb48153da482849d654e1b2fb4d710059f274bc18a48ef0761b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page