Skip to main content

Yet another collection of Python utility functions

Project description

Pyng is a collection of Python utility functions I’ve written over the years, and that I keep wishing were available everywhere. Sadly, in many cases I’ve simply pasted copies of individual functions as needed. But no more!

It’s organized as follows:

  • dicts: dict subsets, dict searching

  • exc: manipulate exceptions, e.g. reraise, retry

  • genio: generator-based file I/O, loosely related to Java file streams

  • graph: filter DAG represented as dict of (key, otherkeys)

  • iters: generic iterator functionality, akin to itertools

  • out: construct a file-like output object to wrap a specified sink function, with buffer_lines as a useful example and syslogger as a practical use case

  • relwalk: os.walk() filtered to produce pathnames relative to the starting directory

  • replacefile: filter a text file in-place

  • timing: time-related utilities, e.g. duration() to produce a human-friendly description of a specified interval and ProgressTimer to abstract ETA computations

  • tk: Tkinter utilities, e.g. prompt for a single password or construct a prompt dialog from (description, type) tuples

  • toposort: topological sort of DAG represented as dict of (key, otherkeys)

In addition…

  • ProgressBar provides experimental progress-bar support for a long- running console script, from self-overwriting console messages through wxPython, zenity, Tkinter. This is very much a work in progress, though functional subsets have been successfully used.

Please see the individual docstrings for more information.

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

Pyng-0.6.3.tar.gz (49.7 kB view details)

Uploaded Source

File details

Details for the file Pyng-0.6.3.tar.gz.

File metadata

  • Download URL: Pyng-0.6.3.tar.gz
  • Upload date:
  • Size: 49.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for Pyng-0.6.3.tar.gz
Algorithm Hash digest
SHA256 f17f07a9e78a601f3b825998ae1837725ed506d55076408a8894a8e4d72b5040
MD5 f4509933c8382d494df0858c7fac8c89
BLAKE2b-256 ffb246cb54ca09a606047e5a5b9c6dd9947a9d8a0d8d773c1bb5c1a2e12acf60

See more details on using hashes here.

Supported by

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