Skip to main content

unit suffixes for nonnegative integers; parsing and transcription

Project description

Functions for decomposing nonnegative integers according to various unit scales.

Latest release 20200613: New UNSCALED_SCALE for no units.

Presupplied scales:

  • BINARY_BYTES_SCALE: Binary units of (B)ytes, KiB, MiB, GiB etc.
  • DECIMAL_BYTES_SCALE: Decimal units of (B)ytes, KB, MB, GB etc.
  • DECIMAL_SCALE: Unit suffixes K, M, G etc.
  • TIME_SCALE: Units of (s)econds, (m)inutes, (h)ours, (d)ays and (w)eeks.
  • UNSCALED_SCALE: no units

Function combine(components, scale)

Combine a sequence of value components as from human() into an integer.

Function geek_bytes(n)

Decompose a nonnegative integer n into counts by unit from BINARY_BYTES_SCALE.

Function human(n, scale)

Decompose a nonnegative integer n into counts by unit from scale.

Parameters:

  • n: a nonnegative integer.
  • scale: a sequence of (factor,unit) where factor is the size factor to the follow scale and unit is the designator of the unit.

Function human_bytes(n)

Decompose a nonnegative integer n into counts by unit from DECIMAL_BYTES_SCALE.

Function human_time(n, scale=None)

Decompose a nonnegative integer n into counts by unit from TIME_SCALE.

Function multiparse(s, scales, offset=0)

Parse an integer followed by an optional scale and return computed value. Returns the parsed value and the new offset.

Parameters:

  • s: the string to parse.
  • scales: an iterable of scale arrays of (factor, unit_name).
  • offset: starting position for parse.

Function parse(s, scale, offset=0)

Parse an integer followed by an optional scale and return computed value. Returns the parsed value and the new offset.

Parameters:

  • s: the string to parse.
  • scale: a scale array of (factor, unit_name).
  • offset: starting position for parse.

Function transcribe(n, scale, max_parts=None, skip_zero=False, sep='')

Transcribe a nonnegative integer n against scale.

Parameters:

  • n: a nonnegative integer.
  • scale: a sequence of (factor, unit) where factor is the size factor to the follow scale and unit is the designator of the unit.
  • max_parts: the maximum number of components to transcribe.
  • skip_zero: omit components of value 0.
  • sep: separator between words, default: ''.

Function transcribe_bytes_geek(n, max_parts=1, **kw)

Transcribe a nonnegative integer n against BINARY_BYTES_SCALE.

Function transcribe_bytes_human(n, max_parts=1, **kw)

Transcribe a nonnegative integer n against DECIMAL_BYTES_SCALE.

Function transcribe_time(n, max_parts=3, **kw)

Transcribe a nonnegative integer n against TIME_SCALE.

Release Log

Release 20200613: New UNSCALED_SCALE for no units.

Release 20190220: Dependency fix.

Release 20181228: Initial PyPI release.

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

cs.units-20200613.tar.gz (3.8 kB view details)

Uploaded Source

File details

Details for the file cs.units-20200613.tar.gz.

File metadata

  • Download URL: cs.units-20200613.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.7

File hashes

Hashes for cs.units-20200613.tar.gz
Algorithm Hash digest
SHA256 f86c804c22a2444ba75758640a331239b763d87b62a009abbc26f549744a1104
MD5 3fb1dabe20e57e2f0704ea6ec5844268
BLAKE2b-256 f7a36afbe66127be2178e0945cae7fc55cd5241584c6f1a1fbdfc64e220cb0d8

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