Skip to main content

Super-fast and clean conversions to numbers.

Project description

https://img.shields.io/pypi/v/fastnumbers.svg https://img.shields.io/pypi/pyversions/fastnumbers.svg https://img.shields.io/pypi/l/fastnumbers.svg https://github.com/SethMMorton/fastnumbers/workflows/Tests/badge.svg https://codecov.io/gh/SethMMorton/fastnumbers/branch/main/graph/badge.svg https://img.shields.io/pypi/dw/fastnumbers.svg

Super-fast and clean conversions to numbers.

fastnumbers is a module with the following three objectives (in order of decreasing importance as to why the module was created):

  1. Provide a set of convenience functions that wrap calls to int and float and provides easy, concise, powerful, fast and flexible error handling.

  2. Provide a set of functions that can be used to rapidly identify if an input could be converted to int or float.

  3. Provide drop-in replacements for the Python built-in int and float that are on par or faster with the Python equivalents (see the Timing section for details). These functions should behave identically to the Python built-ins except for a few specific corner-cases as mentioned in the API documentation for those functions.

    • PLEASE read the quick start for these functions to fully understand the caveats before using them.

What kind of speedups can you expect? Here are some highlights, but please see the Timing section for the raw data if you want details.

  • Up to 2x faster conversion of strings to integers than the built-in int() function

  • Up to 5x faster conversion of strings to floats than the built-in float() function (possibly greater for very long strings)

  • Up to 10x faster handling of errors during conversion than using user-side error handling

  • On top of the above, operations to convert a list of strings (with the map option or try_array function) is 2x faster than the equivalent list comprehension.

NOTICE: As of fastnumbers version 4.0.0, only Python >= 3.7 is supported.

NOTICE: As of fastnumbers version 4.0.0, the functions fast_real, fast_float, fast_int, fast_forceint, isreal, isfloat, isint, and isintlike have been deprecated and are replaced with try_real, try_float, try_int, try_forceint, check_real, check_float, check_int, and check_intlike, respectively. These new functions have more flexible APIs and have names that better reflect the intent of the functions. The old functions can still be used (they will never be removed from fastnumbers), but the new ones should be preferred for new development.

NOTICE: As of fastnumbers version 4.0.0, query_type now sets allow_underscores to False by default instead of True.

Quick Start

There are three broad categories of functions exposed by fastnumbers. The below quick start will demonstrate each of these categories. The quick start is “by example”, and will show a sample interactive session using the fastnumbers API.

Error-Handling Functions

try_float will be used to demonstrate the functionality of the try_* functions.

>>> from fastnumbers import RAISE, try_float
>>> # Convert string to a float
>>> try_float('56.07')
56.07
>>> # Integers are converted to floats
>>> try_float(54)
54.0
>>>
>>> # Unconvertable string returned as-is by default
>>> try_float('bad input')
'bad input'
>>> # Unconvertable strings can trigger a default value
>>> try_float('bad input', on_fail=0)
0
>>>
>>> # One can ask inf or nan to be substituted with another value
>>> try_float('nan')
nan
>>> try_float('nan', nan=0.0)
0.0
>>> try_float(float('nan'), nan=0.0)
0.0
>>> try_float('56.07', nan=0.0)
56.07
>>>
>>> # The default built-in float behavior can be triggered with
>>> # RAISE given to "on_fail".
>>> try_float('bad input', on_fail=RAISE) #doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
  ...
ValueError: invalid literal for float(): bad input
>>>
>>> # A function can be used to return an alternate value for invalid input
>>> try_float('bad input', on_fail=len)
9
>>> try_float(54, on_fail=len)
54.0
>>>
>>> # Single unicode characters can be converted.
>>> try_float('\u2164')  # Roman numeral 5 (V)
5.0
>>> try_float('\u2466')  # 7 enclosed in a circle
7.0

try_int behaves the same as try_float, but for integers.

>>> from fastnumbers import try_int
>>> try_int('1234')
1234
>>> try_int('\u2466')
7

try_real is like try_float or try_int depending on if there is any fractional component of thi return value.

>>> from fastnumbers import try_real
>>> try_real('56')
56
>>> try_real('56.0')
56
>>> try_real('56.0', coerce=False)
56.0
>>> try_real('56.07')
56.07
>>> try_real(56.07)
56.07
>>> try_real(56.0)
56
>>> try_real(56.0, coerce=False)
56.0

try_forceint always returns an integer.

>>> from fastnumbers import try_forceint
>>> try_forceint('56')
56
>>> try_forceint('56.0')
56
>>> try_forceint('56.07')
56
>>> try_forceint(56.07)
56

Fast operations on lists and other iterables

Each of the try_* functions have a map option causes the function to accept an iterable of items to convert and returns a list. Using try_float as an example, the following are all functionally equivalent.

>>> from fastnumbers import try_float
>>> iterable = ["5", "4.5", "34567.6", "32"]
>>> try_float(iterable, map=list) == list(map(try_float, iterable))
True
>>> try_float(iterable, map=list) == [try_float(x) for x in iterable]
True
>>> try_float(iterable, map=list) == list(try_float(iterable, map=True))
True

The difference is that the map option is 2x the speed of the list comprehension method, and 1.5x the speed of the map method. The reason is that it avoids Python function call overhead on each iteration. Note that True causes the function to return an iterator, and list causes it to return a list. In practice the performance of these are similar (see Timing for raw data).

If you need to store your output in a numpy array, you can use try_array to do this conversion directly. This function has some additional handling for overflow that is not present in the other fastnumbers functions that may come in handy when dealing with numpy arrays.

>>> from fastnumbers import try_array
>>> import numpy as np
>>> iterable = ["5", "4.5", "34567.6", "32"]
>>> np.array_equal(np.array(try_float(iterable, map=list), dtype=np.float64), try_array(iterable))
True

You will see about a 2x speedup of doing this in one step over converting to a list then converting that list to an array.

About the on_fail option

The on_fail option is a way for you to do anything in the event that the given input cannot be converted to a number. It can

  • return given object as-is if set to fastnumbers.INPUT (this is the default)

  • raise a ValueError if set to fastnumbers.RAISE

  • return a default value if given any non-callable object

  • call a function with the given object if given a single-argument callable

Below are a couple of ideas to get you thinking.

NOTE:: There is also an on_type_error option that behaves the same as on_fail except that a) it is triggered when the given object is of an invalid type and b) the default value is fastnumbers.RAISE, not fastnumbers.INPUT.

>>> from fastnumbers import INPUT, RAISE, try_float
>>> # You want to convert strings that can be converted to numbers, but
>>> # leave the rest as strings. Use fastnumbers.INPUT (the default)
>>> try_float('45.6')
45.6
>>> try_float('invalid input')
'invalid input'
>>> try_float('invalid input', on_fail=INPUT)
'invalid input'
>>>
>>>
>>>
>>> # You want to convert any invalid string to NaN
>>> try_float('45.6', on_fail=float('nan'))
45.6
>>> try_float('invalid input', on_fail=float('nan'))
nan
>>>
>>>
>>>
>>> # Simple callable case, send the input through some function to generate a number.
>>> try_float('invalid input', on_fail=lambda x: float(x.count('i')))  # count the 'i's
3.0
>>>
>>>
>>>
>>> # Suppose we know that our input could either be a number, or if not
>>> # then we know we just have to strip off parens to get to the number
>>> # e.g. the input could be '45' or '(45)'. Also, suppose that if it
>>> # still cannot be converted to a number we want to raise an exception.
>>> def strip_parens_and_try_again(x):
...     return try_float(x.strip('()'), on_fail=RAISE)
...
>>> try_float('45', on_fail=strip_parens_and_try_again)
45.0
>>> try_float('(45)', on_fail=strip_parens_and_try_again)
45.0
>>> try_float('invalid input', on_fail=strip_parens_and_try_again) #doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
  ...
ValueError: invalid literal for float(): invalid input
>>>
>>>
>>>
>>> # Suppose that whenever an invalid input is given, it needs to be
>>> # logged and then a default value is returned.
>>> def log_and_default(x, log_method=print, default=0.0):
...     log_method("The input {!r} is not valid!".format(x))
...     return default
...
>>> try_float('45', on_fail=log_and_default)
45.0
>>> try_float('invalid input', on_fail=log_and_default)
The input 'invalid input' is not valid!
0.0
>>> try_float('invalid input', on_fail=lambda x: log_and_default(x, default=float('nan')))
The input 'invalid input' is not valid!
nan

About the denoise option

The denoise option is available on the try_real and try_forceint options. To best understand its usage, consider the following native Python behavior:

>>> int(3.453e21)
3452999999999999737856
>>> int(float("3.453e21"))
3452999999999999737856
>>> # Most users would likely expect this result from decimal.Decimal
>>> import decimal
>>> int(decimal.Decimal("3.453e21"))
3453000000000000000000
>>> # But watch out, even decimal.Decimal doesn't help for float input
>>> import decimal
>>> int(decimal.Decimal(3.453e21))
3452999999999999737856

Because the conversion of a float to an int goes through the C double data type which has inherent limitations on accuracy (See this Stack Overflow question for examples) the resulting int result has “noise” digits that are not part of the original float representation.

For functions where this makes sense, fastnumbers provides the denoise option to give you the results that decimal.Decimal would give for strings containing floats.

>>> from fastnumbers import try_real
>>> try_real(3.453e21)
3452999999999999737856
>>> try_real("3.453e21")
3452999999999999737856
>>> try_real(3.453e21, denoise=True)
3453000000000000000000
>>> try_real("3.453e21", denoise=True)
3453000000000000000000

Two things to keep in mind:

  1. The denoise option adds additional overhead to the conversion calculation, so please consider the trade-offs between speed and accuracy when determining whether or not to use it. It is significantly faster than using decimal.Decimal, but much slower than not using it at all.

  2. For string input, denoise will return results identical to decimal.Decimal. For float input, denoise will return results that are accurate to about 15 digits (C double can only store 16 decimal digits, so this means that only the last possible digit may not be accurate).

Checking Functions

check_float will be used to demonstrate the functionality of the check_* functions. There is also the query_type function.

>>> from fastnumbers import check_float
>>> from fastnumbers import ALLOWED, DISALLOWED, NUMBER_ONLY, STRING_ONLY
>>> # Check that a string can be converted to a float
>>> check_float('56')
True
>>> check_float('56', strict=True)
False
>>> check_float('56.07')
True
>>> check_float('56.07 lb')
False
>>>
>>> # Check if a given number is a float
>>> check_float(56.07)
True
>>> check_float(56)
False
>>>
>>> # Specify if only strings or only numbers are allowed
>>> check_float(56.07, consider=STRING_ONLY)
False
>>> check_float('56.07', consider=NUMBER_ONLY)
False
>>>
>>> # Customize handling for nan or inf (see API for more details)
>>> check_float('nan')
False
>>> check_float('nan', nan=ALLOWED)
True
>>> check_float(float('nan'))
True
>>> check_float(float('nan'), nan=DISALLOWED)
False

check_int works the same as check_float, but for integers.

>>> from fastnumbers import check_int
>>> check_int('56')
True
>>> check_int(56)
True
>>> check_int('56.0')
False
>>> check_int(56.0)
False

check_real is very permissive - any float or integer is accepted.

>>> from fastnumbers import check_real
>>> check_real('56.0')
True
>>> check_real('56')
True
>>> check_real(56.0)
True
>>> check_real(56)
True

check_intlike checks if a number is “int-like”, if it has no fractional component.

>>> from fastnumbers import check_intlike
>>> check_intlike('56.0')
True
>>> check_intlike('56.7')
False
>>> check_intlike(56.0)
True
>>> check_intlike(56.7)
False

The query_type function can be used if you need to determine if a value is one of many types, rather than whether or not it is one specific type.

>>> from fastnumbers import query_type
>>> query_type('56.0')
<class 'float'>
>>> query_type('56')
<class 'int'>
>>> query_type(56.0)
<class 'float'>
>>> query_type(56)
<class 'int'>
>>> query_type(56.0, coerce=True)
<class 'int'>
>>> query_type('56.0', allowed_types=(float, int))
<class 'float'>
>>> query_type('hey')
<class 'str'>
>>> query_type('hey', allowed_types=(float, int))  # returns None

Drop-in Replacement Functions

PLEASE do not take it for granted that these functions will provide you with a speedup - they may not. Every platform, compiler, and data-set is different, and you should perform a timing test on your system with your data to evaluate if you will see a benefit. As you can see from the data linked in the Timing section, the amount of speedup you will get is particularly data-dependent. In general you will see a performance boost for floats (and this boost increases as the size of the float increases), but for integers it is largely dependent on the length of the integer. You will likely not see a performance boost if the input are already numbers instead of strings.

NOTE: in the below examples, we use from fastnumbers import int instead of import fastnumbers. This is because calling fastnumbers.int() is a bit slower than just int() because Python has to first find fastnumbers in your namespace, then find int in the fastnumbers namespace, instead of just finding int in your namespace - this will slow down the function call and defeat the purpose of using fastnumbers. If you do not want to actually shadow the built-in int function, you can do from fastnumbers import int as fn_int or something like that.

>>> # Use is identical to the built-in functions
>>> from fastnumbers import float, int
>>> float('10')
10.0
>>> int('10')
10
>>> float('bad input') #doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
  ...
ValueError: invalid literal for float(): bad input

real is provided to give a float or int depending on the fractional component of the input.

>>> from fastnumbers import real
>>> real('56.0')
56
>>> real('56.7')
56.7
>>> real('56.0', coerce=False)
56.0

Timing

Just how much faster is fastnumbers than a pure python implementation? Please look https://github.com/SethMMorton/fastnumbers/tree/main/profiling.

High-Level Algorithm

For integers, CPython goes to great lengths to ensure that your string input is converted to a number correctly and losslessly (you can prove this to yourself by examining the source code for integer conversions). This extra effort is only needed for integers that cannot fit into a 64-bit integer data type - for those that can, a naive algorithm of < 10 lines of C code is sufficient and significantly faster. fastnumbers uses a heuristic to determine if the input can be safely converted with the much faster naive algorithm, and if so it does so, falling back on the CPython implementation for longer input strings. Most real-world numbers pass the heuristic and so you should generally see improved performance with fastnumbers for integers.

For floats, fastnumbers utilizes the ultra-fast fast_float::from_chars function to convert strings representing floats into a C double both quickly and safely - the conversion provides the same accuracy as the CPython float conversion function but instead of scaling linearly with length of the input string it seems to have roughly constant performance. By completely bypassing the CPython converter we get significant performance gains with no penalty, so you should always see improved performance with fastnumbers for floats.

Installation

Use pip!

$ pip install fastnumbers

How to Run Tests

Please note that fastnumbers is NOT set-up to support python setup.py test.

The recommended way to run tests is with tox. Suppose you want to run tests for Python 3.8 - you can run tests by simply executing the following:

$ tox run -e py38

tox will create virtual a virtual environment for your tests and install all the needed testing requirements for you.

If you want to run testing on all supported Python versions you can simply execute

$ tox run

You can change the how much “random” input your tests will try with

# Run fewer tests with "random" input - much faster
$ tox run -- --hypothesis-profile fast

# Run more tests with "random" input - takes much longer but is more thorough
$ tox run -- --hypothesis-profile thorough

If you want to run the performce analysis yourself, you can execute

# This assumes Python 3.9 - adjust for the version you want to profile
$ tox run -e py39-prof

If you do not wish to use tox, you can install the testing dependencies with the dev-requirements.txt file and then run the tests manually using pytest.

$ pip install -r dev/requirements.txt
$ pytest

Author

Seth M. Morton

History

Please visit the changelog on GitHub.

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

fastnumbers-5.2.0.tar.gz (194.5 kB view details)

Uploaded Source

Built Distributions

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

fastnumbers-5.2.0-cp314-cp314t-win_arm64.whl (501.2 kB view details)

Uploaded CPython 3.14tWindows ARM64

fastnumbers-5.2.0-cp314-cp314t-win_amd64.whl (328.3 kB view details)

Uploaded CPython 3.14tWindows x86-64

fastnumbers-5.2.0-cp314-cp314t-win32.whl (316.4 kB view details)

Uploaded CPython 3.14tWindows x86

fastnumbers-5.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

fastnumbers-5.2.0-cp314-cp314t-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

fastnumbers-5.2.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

fastnumbers-5.2.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastnumbers-5.2.0-cp314-cp314t-macosx_11_0_arm64.whl (165.4 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

fastnumbers-5.2.0-cp314-cp314t-macosx_10_15_x86_64.whl (169.5 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

fastnumbers-5.2.0-cp314-cp314-win_arm64.whl (499.1 kB view details)

Uploaded CPython 3.14Windows ARM64

fastnumbers-5.2.0-cp314-cp314-win_amd64.whl (327.3 kB view details)

Uploaded CPython 3.14Windows x86-64

fastnumbers-5.2.0-cp314-cp314-win32.whl (315.9 kB view details)

Uploaded CPython 3.14Windows x86

fastnumbers-5.2.0-cp314-cp314-musllinux_1_2_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

fastnumbers-5.2.0-cp314-cp314-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

fastnumbers-5.2.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

fastnumbers-5.2.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastnumbers-5.2.0-cp314-cp314-macosx_11_0_arm64.whl (164.1 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

fastnumbers-5.2.0-cp314-cp314-macosx_10_15_x86_64.whl (170.4 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

fastnumbers-5.2.0-cp313-cp313-win_arm64.whl (483.2 kB view details)

Uploaded CPython 3.13Windows ARM64

fastnumbers-5.2.0-cp313-cp313-win_amd64.whl (318.3 kB view details)

Uploaded CPython 3.13Windows x86-64

fastnumbers-5.2.0-cp313-cp313-win32.whl (307.8 kB view details)

Uploaded CPython 3.13Windows x86

fastnumbers-5.2.0-cp313-cp313-musllinux_1_2_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

fastnumbers-5.2.0-cp313-cp313-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

fastnumbers-5.2.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

fastnumbers-5.2.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastnumbers-5.2.0-cp313-cp313-macosx_11_0_arm64.whl (163.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

fastnumbers-5.2.0-cp313-cp313-macosx_10_13_x86_64.whl (170.2 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

fastnumbers-5.2.0-cp312-cp312-win_arm64.whl (483.2 kB view details)

Uploaded CPython 3.12Windows ARM64

fastnumbers-5.2.0-cp312-cp312-win_amd64.whl (318.3 kB view details)

Uploaded CPython 3.12Windows x86-64

fastnumbers-5.2.0-cp312-cp312-win32.whl (307.8 kB view details)

Uploaded CPython 3.12Windows x86

fastnumbers-5.2.0-cp312-cp312-musllinux_1_2_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

fastnumbers-5.2.0-cp312-cp312-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

fastnumbers-5.2.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

fastnumbers-5.2.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastnumbers-5.2.0-cp312-cp312-macosx_11_0_arm64.whl (163.7 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

fastnumbers-5.2.0-cp312-cp312-macosx_10_13_x86_64.whl (170.2 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

fastnumbers-5.2.0-cp311-cp311-win_arm64.whl (483.3 kB view details)

Uploaded CPython 3.11Windows ARM64

fastnumbers-5.2.0-cp311-cp311-win_amd64.whl (317.5 kB view details)

Uploaded CPython 3.11Windows x86-64

fastnumbers-5.2.0-cp311-cp311-win32.whl (308.3 kB view details)

Uploaded CPython 3.11Windows x86

fastnumbers-5.2.0-cp311-cp311-musllinux_1_2_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

fastnumbers-5.2.0-cp311-cp311-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

fastnumbers-5.2.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

fastnumbers-5.2.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastnumbers-5.2.0-cp311-cp311-macosx_11_0_arm64.whl (164.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

fastnumbers-5.2.0-cp311-cp311-macosx_10_9_x86_64.whl (170.2 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

fastnumbers-5.2.0-cp310-cp310-win_arm64.whl (483.4 kB view details)

Uploaded CPython 3.10Windows ARM64

fastnumbers-5.2.0-cp310-cp310-win_amd64.whl (317.5 kB view details)

Uploaded CPython 3.10Windows x86-64

fastnumbers-5.2.0-cp310-cp310-win32.whl (308.3 kB view details)

Uploaded CPython 3.10Windows x86

fastnumbers-5.2.0-cp310-cp310-musllinux_1_2_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

fastnumbers-5.2.0-cp310-cp310-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

fastnumbers-5.2.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

fastnumbers-5.2.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastnumbers-5.2.0-cp310-cp310-macosx_11_0_arm64.whl (166.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

fastnumbers-5.2.0-cp310-cp310-macosx_10_9_x86_64.whl (170.6 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

fastnumbers-5.2.0-cp39-cp39-win_arm64.whl (484.5 kB view details)

Uploaded CPython 3.9Windows ARM64

fastnumbers-5.2.0-cp39-cp39-win_amd64.whl (318.6 kB view details)

Uploaded CPython 3.9Windows x86-64

fastnumbers-5.2.0-cp39-cp39-win32.whl (309.4 kB view details)

Uploaded CPython 3.9Windows x86

fastnumbers-5.2.0-cp39-cp39-musllinux_1_2_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

fastnumbers-5.2.0-cp39-cp39-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

fastnumbers-5.2.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

fastnumbers-5.2.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (1.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

fastnumbers-5.2.0-cp39-cp39-macosx_11_0_arm64.whl (166.7 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

fastnumbers-5.2.0-cp39-cp39-macosx_10_9_x86_64.whl (170.6 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file fastnumbers-5.2.0.tar.gz.

File metadata

  • Download URL: fastnumbers-5.2.0.tar.gz
  • Upload date:
  • Size: 194.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0.tar.gz
Algorithm Hash digest
SHA256 07266a2fca9e08eeb5a6c70be4c8db3637db9b930ea5198facbbb9b0b31d4d03
MD5 661ae54aa1cba49fab9d7346806bcbc6
BLAKE2b-256 13c90ff60488a6c436c0ea91fbc79793a06226b57444d03f8d9049657a26e133

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-win_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 0b3ffd09b82506d9b33c8944e14bf96d882b881cd5de1f388218736052407c6c
MD5 dab299f6ebe0230da9cad1dc9147809f
BLAKE2b-256 1e1f79632bd0a38ac7dbdcffc103daac93214979e6984a4d4ae1503a75670b3a

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 7ae435d8d446b567aea7e009a4a2ce22bb4f4c3c3c8bbff698d4ec60536e0b85
MD5 2624cbed4ddcfbfe9adaf7026891b323
BLAKE2b-256 2376b36aad68ce0dc4c8e015d7fa0828974d58db48191d1d777bea3fd21f1e9d

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-win32.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 316.4 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 f90e7b3ad9ccf29d6e3d13cbddef5d6a51a9b09e328e2e9e0bf39e6ffcdf4942
MD5 f9609e213e824830fed7d32b76e23eb2
BLAKE2b-256 fc19fea646c85fff43a83075f5c65d5a90bd77c55c4d5ed1b0e7449eb3584556

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e7d467f1f11ab08402b2d8689aaed92505b68e877783980a7dc8b0a04a58a86f
MD5 ceb694ce1ed62d70c20ce78004c5c482
BLAKE2b-256 602521dc58683df9b473f499074fe614e0b9f8971a288b9e4a06127f1a0ff368

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 81f210f1b8237a19aed898fc992d69214dbcfbb152ea9438b8a4ae8bee495cd1
MD5 641450052acfeda29b95feb97887c435
BLAKE2b-256 a0d9635a43cf07cd8ad17d9766330d4b2174e1d87a2d000a34f5962835cbc067

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 244cd4fcc47c17133cad7b842f7c293b7d47ccad2f4e727fcca2460102d5f4af
MD5 6f1b5447105cf71329ef84cd5c47332c
BLAKE2b-256 d13a8d85c9df497807278bc6e5d514c2590e34340aacf8a300793949ede4d524

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 cd6d49ee1e31a97b7d3df6aff732a5d3aff127cad447f20905ac8d54bd3d86c2
MD5 cde715f76b3c0cf5a8ff6ff19faae42e
BLAKE2b-256 a9510eeca0464d676bd53fbcdc27410a96eaa3ec54b1bfe443665567c440f6ae

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 46e9e31c0e2f1422084917913d370e97865fd5ce341aa76efd92387eafd90da8
MD5 6a3ca726b65a8a99bf8c40769a85d0c3
BLAKE2b-256 2ca3696d8b15c62eebda55037c37d3db2b93cc6326dab2a4d4a9ab9cf1980576

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 6bf22f09c2dd5b9c9c463201c43b21e2736769d11f29d742a3b9b64a5a39c52f
MD5 cf73c2f997d65cb6cfad1b8ecb7ec0d9
BLAKE2b-256 02c8e8a7d12d8bbbd29d35867f6955023be27a9b14894e45da2d94aad737b2f3

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-win_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 87a465997ed189dff871e022bff5ae43eddd8b711ae725277ae74469801f2e02
MD5 f0beab0f50ee4449d54410811badd659
BLAKE2b-256 8a4e23706dfb33214b03a985e35694078d2eb091ed7256f72d602917e0f0913f

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 327.3 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 24a64cc172b6428318655a915175cc84f633d35911d7ee7857b24118240c25a8
MD5 1085a2af1a8ea567dc648a1ce60a8d4d
BLAKE2b-256 19ea34b8e1ff29ab3e9edd492d37a53c1365508f8b5441bafdb2658a7ed05627

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-win32.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp314-cp314-win32.whl
  • Upload date:
  • Size: 315.9 kB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 298359db36f2bcbd65324d756266461f444749812b62d36ce966f6775e03009a
MD5 889c4e9e3632055d54fc118f99417e9c
BLAKE2b-256 7b7707fe94cc0a97c45d3120d0a9594ba4fc5479a6c4e7461c95d9f07464f580

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2d4c24e8d15ad42356c05cf2278daaa4c2cbce6b61ad1e4594bd92e1190d272a
MD5 11e9b69b2f675365f72a0a940682d95b
BLAKE2b-256 b09647d7a35a6793ba1503edb465da663e34977ab770aa69aebf2c35868c49ad

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a3249b3113a1ad1776e8a671fed70acd85a36f41ee5691c48d44a9bd69169f1d
MD5 3ac8f1f35488690319a9ae98d0e1a332
BLAKE2b-256 30259b3bd6f6809a4973b421063574f804fdfb87acb42945b8bea63a7f966891

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 345ebef7f5c1c929920de93ad0921ddc4f3bf6bfddb93df26c511c542d07d63d
MD5 635016780758181535b6ab8f2b670fa1
BLAKE2b-256 81fb772cc6ab60bbd925c72c726a9bbd088251ece9bbf9112d710c539e3cab67

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 739b07472f4b0c574f476e6e8b4d8a60bd95bb18cfb78f009e9229c3a80479fd
MD5 1b9f5b67049003677a1dd59851fabb67
BLAKE2b-256 f89dc6aa4d5125c0928444e96310b70b99018fa54264139c53ffe6ab91f99b2c

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 73859c58660e74dccfab3e7db97566fcec1d5f7276c870a8fb320cced079e507
MD5 1f8f01283ec90166b457fa7f3d3209ac
BLAKE2b-256 bfacdb34ab10b103b5fea1306a7ad2137fe9d928d587a26d819775d1e06ed3f3

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d2e81456c47270437dff6cd990084cfd1ca05ddffa8346f584ee913b9d296e99
MD5 3a578037da6bff9f406d5b791a280583
BLAKE2b-256 86669e76c4eee6d43cd6b5e6e92d0aa627613d21d47b0479b1c04fe83a87cb7e

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-win_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 41a913f46521b4445a1bfb72524d2db6c60db8a6dc609009c6ad967724a93a9a
MD5 6ae0b5aaeeee1dcc9f6274c3e0497e5e
BLAKE2b-256 c809c842ebc8ae2eec44c28af532e590e3ca7f5ff993c876380f0472b1fee65c

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 318.3 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 cc6dea8c38c319ee571f4a7c8dab5d2af3a694de91de0f71a94b1f340cf2d837
MD5 f16244cd40f3dcab6a080dc2360c67e5
BLAKE2b-256 56c62b25e803a4ffbaf79d3d6406a4a60cf205410d9cef8f08e8e2eff2a1f057

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-win32.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp313-cp313-win32.whl
  • Upload date:
  • Size: 307.8 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 3aaaca06d3a001ccd47a9703119007d7f0a49534d9926e7fb35e4018713c3f85
MD5 42c4b09f279dfc75db3f5e68701d9e19
BLAKE2b-256 6a2dc8396c814aca4d5931dd4bfa4baf4ddc083911d21c5f38d78273bb7f152f

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7c641388752ee680a2f3fb77f99bcff4d77769d21c277abd3e5ec85e42ecef3b
MD5 432e966a700d73cf1f4749320eb19ae3
BLAKE2b-256 188dca093e1eca5992bba18950b5c32e9d78981c21097915c2583e4b37a23e3b

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b15c77f0072093c132ddcd590cec475920ca90ca329ff9293c39307abcbc7e3e
MD5 acd8162e4f4c6ff99387f839f77bb737
BLAKE2b-256 36374c2d4496a16e94b0c345605d7b9ec9446cccd0c9cf1fb5e8f56838bbd443

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f69b55dde258e63eee39b469e404959049b17e76226aa8a1133be926f4c1ab47
MD5 3a0aedf8c4cb8445b30f80e08533ad0e
BLAKE2b-256 c7d65146274b440a91c5ceac4d085550833d4a863ed481c9f90e98348d95dd04

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2591b16eef11143b98e96c23d0fb55132301563f448f7a4ee06405cff52b2fe6
MD5 610bf02a5e0d9e99fef17721520ab60f
BLAKE2b-256 4a10c1f1458120b74f4c1a1b118eecc3b68de5dbc78644cda0363cba7fecfaa5

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2567afd2844be863d9dbb8f92e7fd479269003c6a766eda697be227935f42ca4
MD5 052aa1c7fc78cea73c6c756d22eb788a
BLAKE2b-256 fec5da81ba3436365b2d3d3c3540ff79b007c81d6f5a799cad62e6a112ba9f00

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 83fdfc883a00b5b12e95608ea9eeb285af3f953a6153ddb61f293dcadca01ce3
MD5 51574cbbb309da90a394217e91fbcffd
BLAKE2b-256 d69c857cbf7421db9e110b30ba78b294fb95479faab9c16674a6eb9204850d05

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-win_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 5f613906bb6bd22d4fc52a472ab6e62c14d0da078dda1834374cea4c2f7e5a5f
MD5 51cded979ef812adc753eb13927e5210
BLAKE2b-256 104b4097e73fd34d1a1cbf656822f4ab49daf14ecacd958d668e651bb03d5d8f

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 318.3 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c519f758b88733c70a8b5a11564049ebb66882377968337a0437f37c959c39a5
MD5 99f7d79910013d6fc4e616ffe7b2537d
BLAKE2b-256 5a6c00d95a129835e53ea719b40483b05eff793a66e5ada138fe08d29d57bdd2

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 307.8 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 c242138a9e37be60aadde8aff74676caecd02fb97d8472e0d033d1856de3e123
MD5 b2408adbfed6d295ae3b805e451170c1
BLAKE2b-256 4b46dc71bbd7a9357787d671d7d6c6412db75a34e3b1c2305ffa7725e9bb0a2e

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cdd1cffbcdf6654bb596b9b7e4f4092f84b1d5480e3e737958fbcf456fa25c4c
MD5 66fd87e4b88d8cd0df7b3f3f1e5adb7d
BLAKE2b-256 72126c424891e302752fe467af06ed04980a9a33079e830fd716f2e824b9684b

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 12402ff6f3b9f2fae34de007bea77db58a3afc59a180ec4734f799e3f4295299
MD5 d4775e166a5e6ac74a6006996abe59e5
BLAKE2b-256 9d4184533a6bda5a661dcdd19992e3c6807c593171c97c4a7cf5b684ef0ebef7

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 16ed3fabc257b4fc042c7150382560e78ee256c83daaaf5ad09440ad4b79f176
MD5 7cfacd4b924ab4b9a8d7986fc735a266
BLAKE2b-256 acb8116b921df4ea9915d510d40fa77d4947fc550c65f2c115a5d6c3d14cbe8c

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d893e418d61b3dcc14ada4c063eba06e3fb3179b5a561f0a891f89d800498f51
MD5 a1a88be67d971982700eff3efbea7dff
BLAKE2b-256 c8cbf1a5cbb23b644c23b816555a2af477a98abc916069cb365d3d336c86bf28

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9e755800fc01c1cedf4ea32957ca38e6e387e3945a5ef6ad24098bdec7693da2
MD5 2dc605fd9f29ca6192e4a6a047369584
BLAKE2b-256 bbdd25461081504afec1abc1a7aaadcb879721ef21f3695806c96b1cae67786f

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f3d978a98f4906dd147489f7a3b0e20697e0cc5d93866bbfd9b0ca1baf20417e
MD5 5039f1193810485c54c8de028e2743e9
BLAKE2b-256 a94d22768f6f0b236efebc6148b0121e41edd7dd20487e2f0b7c4e849fbb4dc5

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-win_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 9b21bef48af5f29e2e165d47d28aec7bf518025149ea7b024446647c2fec0a77
MD5 291ae9ebb475f61d43a58a17af2a1ad9
BLAKE2b-256 ae018c6a8b1c17930d39b5e988186e89a86ae93ed4fea597525b2245ce51fc8e

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 317.5 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 58e637ff99da9cf7ffeaf85b49858c3b5bba8cdbd315cf2a728c2bc3b9817d2f
MD5 d897664fb0f1473df779c6475b121e9a
BLAKE2b-256 6f536253b1d324ad920703ba6dbddf6191c8c09f5679305d7a8443683181ef97

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 308.3 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 d369f8eedf2e8b4686db75c2fffea9301205dbaa9efeed8dfe2bdcca92001659
MD5 b9210d3b29d9d2fca5433c847bedb63b
BLAKE2b-256 f00020980a2c4bc0c26b31d433f375085b6aa8908d7da9293eaeff22461b02bb

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f4b51e329dcb58c31b2ad62149f2a554e602f99c22b9285f3cbba75fb4f4fa35
MD5 6a317f0f512bd20d930ef3c7b8254ac7
BLAKE2b-256 dd686f14386b9fdeee470e72b0890e541228a3e543fa21099be5d153b82e20c9

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d05c04c4846f933a884b4416dcc4e4e0e52d4dc31724fb41aa61f478e675668e
MD5 2f10925f7733ccd7a46509d0e630015d
BLAKE2b-256 25b1e2c2b1521bf612ddf3fbebb867caa26dce8829fb630d2098209a42afaf00

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 371ad7eea7f33a370465146c41cdeac155506bb9b39125077a3b86faec492d66
MD5 fd25c3a8f8db639e5330a8f34b09e2a5
BLAKE2b-256 9eb2cf8b617fc83b569d439806d323f6c992f7837939e71859bc6534091fd2b6

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4e55f52491729d9f5f56b4e91f49b561a396efa505733c9d9ea0af84d344f50e
MD5 1a1aaa9c467d069ffdfcd99db06d15ce
BLAKE2b-256 5f507fd01ac31e7a6a6caf389a7ab50a3c7c54a1cbb093b1a752fd00e5c1cb58

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7bd7594177848714486f3c10ef6275fa689e6b32e2e0e099ed16712ed74d88c9
MD5 c20c3e180ac9048e8cd5752796ee28f6
BLAKE2b-256 06ff7488ddef5335a74ed46f4831ff8dcdc99c0ecc2a3b2dc71c64ba1c57bc82

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5f8477a4803103e17caf2a66476a17017c4f729d3f921476a90fd0943ed9ef17
MD5 096a1c82cf3a9bb41198124c05b8e079
BLAKE2b-256 3066035349fdca61fd0e7e660d17c9fe43fc535112f4bfcd0843599ea553de3b

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-win_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 4aa7e9944b336550a02266f2ceefed27ac291a573f884c3f4ceea5d852ed021d
MD5 c58d23ed012e2a98e629cb43c81c659c
BLAKE2b-256 e34078b37c441af968986d6ff29cbbebc31b72dce7af92f1b06dd04c434dde7d

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 317.5 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d388b76f282dc3f703364a8b23a6e30cfee7946da3b6769d8c846fda020ff240
MD5 74ec5be581b2b63ea65790c20fb525f8
BLAKE2b-256 b25dfeb03e6b7d1289232b07b3c92209eafeae1a9a71bfb8a63d2cae2befac71

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 308.3 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 4f2397dfa7dd97ebcd9e1f4ba9f02da8704ebee1b2bc255982311c7894e900aa
MD5 02be8351ea1844649b700a654ca76884
BLAKE2b-256 501f495e0e516438569cb0b910b19eb28ee9a8240a7f90c9120466d1dde7cf9d

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4a5ddb97faeb7c989a355b17eeda14802527301a02654bce7a5b5282c9a81a90
MD5 208636f7675e63025a2c3e911be71f5c
BLAKE2b-256 0d0deb66c638b8fd81b06eb9799b9e1894087c9c2f99096a914a76e85c69046d

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d335908933fdedf99ead51f5f4528750d76712d91bea0f2fb9cb2a8728867ce3
MD5 219a68aeb89e568e2e69dce7b8bd1094
BLAKE2b-256 0e987e068ec382cb0a730c622844ab38e58942ec6abd01af4d960f93639ca8f6

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 56b6c351e40d48e8bb5a716e34682bf5edf2d29b13b80dc5cd02a39b73e814e7
MD5 eced065b261e144225dfff5c01a7b631
BLAKE2b-256 87de405d95b62feb071a50c99319857fc6519904ca76f0cbb922599ee39fdfab

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6c3bbcb2fde2a4343e88d1731fbec3d97a4d4cad8d78b429a456a72e6a698115
MD5 5d72ccc55a0f6287c5ca45b494c5aa01
BLAKE2b-256 9311d4c79ee46fc70c51c5150b814ba2aaae70386648e5b0bd5933a520eac760

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d504592c091095be66dafef9e47de94e7115a5f742cbda5871483dfb2ef4d212
MD5 5dacce6d7456105b7e1807556408ed80
BLAKE2b-256 a8dd7d948be6333ec5ffd008bf8e396dad8fd107e1c049cc83649cf77a12bd74

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 c58ea4c177fd1971a89fdf0b0bb5f3e840a9c14254ecc6480c4968806f03ed35
MD5 447980a156365d8245bc81bccc9ae5ce
BLAKE2b-256 971004bb9b53eaa8bbd29d33248cc931c038d5b4acf9e156ea88dddd116f9723

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-win_arm64.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp39-cp39-win_arm64.whl
  • Upload date:
  • Size: 484.5 kB
  • Tags: CPython 3.9, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-win_arm64.whl
Algorithm Hash digest
SHA256 708a0b4cbaa22557ee04eda27f5a1feb85206dcee325acc0774b3318c375be2a
MD5 eef6d16d56d170a2b8999798feb17365
BLAKE2b-256 9e6702e49010bf980ec5e2dfd7ecd95d5acaaedcb1875a06a91a78c3c35fab39

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 318.6 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 19f44665fc71cc335e8aaa0e4274466c2d7de9ce79f9f78b053c3ba147414168
MD5 f380fa7f8aab9b7adde1103a473d9211
BLAKE2b-256 1d8712c08d3a279e75bd5a5f15f03913c70c0a961afa29347562707879e3c418

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: fastnumbers-5.2.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 309.4 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 8d00fe308a0bdfdb0022ba4695d448885f1e3976530b52728cabfc5dbb8173f0
MD5 eb8abde6130adc2cc198b78bd42b7e6a
BLAKE2b-256 c284860f8d5e278fe1013c7062d6dfed540cee6748913e805dc49202824d4e60

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9fb3c6d826e46395435f72be0d6820a5eafe49ee5928d7a1bedff1f23d99d3cc
MD5 a0ea8dbe4e1d2efc9663e4030bc54306
BLAKE2b-256 eccf8dc8efbd59f2976a85d51ef9de687b4e825354ae88485ce790d430625a5d

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f60d84a6c7fdce93f7768f5b7fc506f6ab343cd301449a506921edda30d9a123
MD5 fbe82d1b8439a63fa8eaa5c7bb719d56
BLAKE2b-256 86d08fdd235471bc3e9d947cb6e303ff97b82ed99efb46004d2a2d9836f2119e

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dbb8c6f2c3df1f7ba2743ed1919ae98bf2b152322452fd439a7c064e1f6d433c
MD5 113aad82b20c01c582b2c7fd005ec231
BLAKE2b-256 a9975a147ad2d6b6de6b9db6c7a1fe8bb6002ab492e57ca1ee6b4abe6c4bf19c

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 1ea119e8a66f57c57a843865dbf01b1a60eb5706959d71ebc48ee59eeb8dadaf
MD5 82dc5ce97fb18376006b470c3df8610b
BLAKE2b-256 e979a1d03b35acd1b063138b2a520e31bf6994d8fe456d5132a0773dc5f69d5c

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 77b042f0a6ae7c48fdbfb4858d9abfbf02c6acd5dfd523dd58110e32b51fc7a6
MD5 799f772a32c851029f1e996b60409a12
BLAKE2b-256 b16afdef3c9bc0c4db78b4345375cdf69766a0dfabac6c877fef1d39a34e3cb0

See more details on using hashes here.

File details

Details for the file fastnumbers-5.2.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for fastnumbers-5.2.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 72395e1f2637e28a82c0f5d9178e1ca37ceb043eb9eea57caed7f733d0e1183e
MD5 90822f2bb45fa56de4818b3e05157ab4
BLAKE2b-256 b4b941450e02b051706959e44bc9a027f65708d4e4059c27ad65cf72d42336a1

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