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.1 February 21st, 2026

    • added shortcut function for listing number of bytes

  • 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.1.tar.gz (25.8 kB view details)

Uploaded Source

Built Distribution

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

numtxt-1.3.1-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: numtxt-1.3.1.tar.gz
  • Upload date:
  • Size: 25.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for numtxt-1.3.1.tar.gz
Algorithm Hash digest
SHA256 0c13af8fbd67d72feb006aa0ee31dd6186738d8d73f2dca34db15c71b389966c
MD5 e5080584bc671009be7f9f371756f2b1
BLAKE2b-256 a32ce7f1c3573db9020ee7b74b3b0974b27df52c22240f737282ad87c17eaacd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: numtxt-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 25.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for numtxt-1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6a11936a4e7476e67f918dcaaaf91f6059cac4c638586d2c78c04a004ad04178
MD5 0d8a833c4e17ebab1e43c0c2fc4c4a0a
BLAKE2b-256 d3ca5d00eb48e1fc091b90fcad76bb3a0213f1cc7c863c8d709e8e634a47c24d

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