Skip to main content

gives full and approximate written forms of numbers

Project description

A pure Python module that gives both full and approximate names for numbers

Contains functions that give the cardinal name (one, two, three, …), the ordinal name (first, second, third, …), the precedence (primary, secondary, tertiary, …) as well as approximations (23.3458e45 -> ‘23.346 quattuordecillion’) and prefixes. Has four different naming methods for powers and three different suffix styles. Additionally contains an SI prefix naming function and readable time-delta string function (7234 -> ‘2 hours, 34 seconds’).

Suffix Styles

  • short - Assigns ‘illion’ to names. This is the default style.

    • 10^6 = million, 10^9 = billion, 10^12 = trillion, …

  • long - Assigns ‘illion’ or ‘illiard’ to names depending on power.

    • 10^6 = million, 10^9 = milliard, 10^12 = billion, …

  • british - Assigns ‘illion’ and adds ‘thousand’ in front of names depending on power.

    • 10^6 = million, 10^9 = thousand million, 10^12 = billion, …

Naming Methods

  • conway-wechsler - This system extends the normal Latin naming method indefinitely and follows Latin syntax closely. Can use long, short or British suffix styles (examples below are short style). This is the default method.

    • 10^6 = 1 million

    • 10^12 = 1 trillion

    • 10^51 = 1 sedecillion

    • 10^342 = 1 tredecicentillion

  • noll - This system extends the normal Latin naming method indefinitely. Can use long, short or British suffix styles (examples below are short style).

    • 10^6 = 1 million

    • 10^12 = 1 trillion

    • 10^51 = 1 sexdecillion

    • 10^342 = 1 centredecillion

  • rowlett - This system uses Greek prefixes for names. Introduced to prevent confusion the suffix styles can cause and therefore does not use any such styles. Currently valid up to 10^2999.

    • 10^6 = 1 million

    • 10^12 = 1 gillion

    • 10^51 = 1 heptadekillion

    • 10^342 = 1 hecatodekatetrillion

  • knuth - Radically different naming method introduced to prevent confusion the suffix styles can cause and thus does not use any styles. Inherits conway-wechsler system to extend naming scheme indefinitely (original paper stopped at 10^4194304).

    • 10^6 = 100 myriad

    • 10^12 = 10 myllion

    • 10^51 = 1000 byllion tryllion

    • 10^342 = 100 myriad byllion quadryllion sextyllion

Version History

  • 1.3.0 January 20th, 2024

    • adjusted si and approx functions to handle formatting options that include the sign (E.G. fmt=’{:+8.03f}’)

    • add interval function, accepts a number of seconds or a datetime.timedelta object and returns a readable time duration string (E.G. 7234 -> ‘2 hours, 34 seconds’)

  • 1.2.4 January 20th, 2023

    • added new si prefixes

  • 1.2.3 January 20th, 2021

    • VERSION switched to __version__

    • this module’s 4th birthday

  • 1.2.2 October 12th, 2020

    • fixed (again) approx handling of zero

  • 1.2.1 October 1st, 2020

    • restored approx handling of small values

  • 1.2.0 August 2nd, 2020

    • added formatting option to approx function

    • Fixed si handling of zero

    • table, gen10_dict and gen1k_dict functions added in previous version made public

  • 1.1.1 January 10th, 2020

    • Added si prefix function

    • Minor adjustments

  • 1.1.0 August 18th, 2019

    • Added precedence function (primary, secondary, tertiary, …)

    • Added prefix function

    • Log function can now be overridden by third-party modules (gmpy2, mpmath) to allow compatibility

    • Added (t)uple function (single, double, triple, …)

    • Added cardinal function call; identical to name function

    • Added version history to README

  • 1.0.2 November 29th, 2017

    • Fixed approx handling of zero & removed approx handling of small values

  • 1.0.1 January 20th, 2017

    • Modified readme/setup.py for correct pip installation

  • 1.0.0 January 20th, 2017

    • Initial 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

numtxt-1.3.0.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

numtxt-1.3.0-py3-none-any.whl (25.6 kB view details)

Uploaded Python 3

File details

Details for the file numtxt-1.3.0.tar.gz.

File metadata

  • Download URL: numtxt-1.3.0.tar.gz
  • Upload date:
  • Size: 25.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for numtxt-1.3.0.tar.gz
Algorithm Hash digest
SHA256 cc4e1695edd7c362d851adbb4ab9c5ff900ab1e3f8c15f50b0d82bd2e49e3719
MD5 d96df7a58a9a0832bb7e0c801e4aa080
BLAKE2b-256 542700169dd195f01fc62d9cb7d978a048312069d8b736e62f9643de3625c3d4

See more details on using hashes here.

File details

Details for the file numtxt-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: numtxt-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 25.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for numtxt-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 adbf409d06387dbf0640633e17f248891a0608f7eb054ca8390457d66e2fe811
MD5 fd1d8a30210ff26994124391c6309c98
BLAKE2b-256 43940fd90d9b2399972a727307b9fba24d76134c62454d08334a1fcdf5e8b7b1

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