Skip to main content

Utilities for Python development.

Project description

A few helpful utilities that I find useful.

Autovivification

Dictionary type that allows for dynamic allocation of nested key values without prior defintion.

>>> a = AutoVivification()
>>> a[1][2] = 3

Multiprocessing Wrapper

This module provides a set of methods for handling multi-threading patterns more easily.

>>> import user_metrics.utils.multiprocessing_wrapper as mpw
>>> mpw.build_thread_pool(['one','two'],len,2,[])
[2,2]

Record Type

Defines the recordtype method which returns a type definition object that allows for the creation of mutable objects with specified attributes. These are essentially identical to collections.namedtuple except that the attributes may be changed after the namedtuple objects are created.

>>> Point = recordtype('Point', 'x y', default=0)
>>> Point()                 # instantiate with defaults
Point(x=0, y=0)

Miscellaneous

Some miscellaneous methods exposed by this package.

Format Timestamp

The format_timestamp method takes a timestamp representation (string or datetime) and convert to a standard string representation.

Enumeration

The enum method implements an enumeration:

>>> Numbers = enum('ZERO', 'ONE', 'TWO')
>>> Numbers.ZERO
0
>>> Numbers.ONE
1

Build Named Tuple

Given a set of types, values, and names builds a named tuple. This method expects three lists all of the same length and returns a dynamically built namedtuple object. Currently, only list, str, int, and float cast methods are accepted as members of types. The mothod is named build_namedtuple.

Unpack Fields

Unpacks the attributes and values of a record type or named tuple into an ordered dictionary.

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

rafutils-0.1.2-dev.tar.gz (5.7 kB view details)

Uploaded Source

File details

Details for the file rafutils-0.1.2-dev.tar.gz.

File metadata

File hashes

Hashes for rafutils-0.1.2-dev.tar.gz
Algorithm Hash digest
SHA256 6f037c90fc716b710ddc18b2ad0e3ba58aacf0266b66818ecb024ec91fb7d006
MD5 61c9d9e1019e658de917ac5876d7fd92
BLAKE2b-256 f9bd055bcfea7a7943c3b0dbba95075bf2dc7f80eb529ef22b2b67b69fa728bf

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