Python's built-in float type has double precision (it's a C double in CPython, a Java double in Jython). If you need more precision, get NumPy and use its numpy.float128.

Answer from Fred Foo on Stack Overflow
🌐
Reddit
reddit.com › r/learnpython › [deleted by user]
What is a double? (Data type) : r/learnpython
May 2, 2022 - Any floating point number in python is stored as double.
Discussions

TIL a Python float is the same (precision) as a Java double
Just wait until you find out what an int is in python More on reddit.com
🌐 r/learnpython
85
108
May 1, 2025
How do I convert a string to a double in Python? - Stack Overflow
Bring the best of human thought and AI automation together at your work. Explore Stack Internal ... I would like to know how to convert a string containing digits to a double. ... That is not a python double. A python double has unlimited capacity. ... There you go. More on stackoverflow.com
🌐 stackoverflow.com
Datatypes: get back 80-bit long double, 80-bit float support in general,
hi, sorry if silly question, I have! searched before asking, from another application ( gnumeric ) I managed to call’ python, do some calculation, and get back a result, with IEEE doubles. When trying to use 80-bit long doubles I can convert them to e.g. numpy longdoubles via longdouble( ... More on discuss.python.org
🌐 discuss.python.org
14
0
September 3, 2023
[deleted by user]
Assuming you mean the c/c++ double type...? Any floating point number in python is stored as double. So 1.1 5.7 and -1453.653356 https://www.pythontutorial.net/advanced-python/python-float/ If not, please provide an example of the data type you mean. More on reddit.com
🌐 r/learnpython
7
1
May 2, 2022
🌐
Quora
quora.com › Does-Python-have-no-double-data-type
Does Python have no double data type? - Quora
* Number * String * List * Tuple * Dictionary The number data type can be divided in four further types as, * int * long * float * complex Python interpreter by default interpretes the float data type with the precision of double which is us...
🌐
Appdividend
appdividend.com › python-double
Double (Float) Data Type in Python
December 13, 2025 - Python does not have a built-in double data type, but it does have a float type, which designates a floating-point number. It handles double precision by default, adhering to the IEEE 754 standard.
🌐
Flexiple
flexiple.com › python › convert-string-double-python
Converting String to Double in Python - Flexiple
March 22, 2024 - Python provides a convenient built-in method called the float() function to convert strings to doubles. This function takes a string as input and returns the corresponding floating-point number.
🌐
STEMINATE
thesteminate.com › python-course-week-2-doubles.html
Python Course Week 2: Doubles - STEMINATE
Double precision floating numbers, more commonly known as doubles, are decimal numbers. For example, 1.333, -2.5, and 1.5 are doubles. 2 is an int, 2.0 is a double. For these numbers, it depends on how you write the number.
🌐
Squash
squash.io › how-to-use-double-precision-floating-values-in-python
How to Use Double Precision Floating Values in Python
November 2, 2023 - In Python, you can initialize a double precision floating value by assigning a decimal number to a variable. The built-in float class in Python represents double precision floating-point numbers.
Find elsewhere
🌐
FavTutor
favtutor.com › blogs › convert-string-to-double-python
Convert String to Double in Python (3 Easy Methods)
October 27, 2022 - Python does not have an in-built double data type (int, string, and float are in-built data types). But it includes float data type, which represents a floating-point value (but here with more precision).
🌐
Finxter
blog.finxter.com › home › learn python blog › how to convert a string to a double in python?
How to Convert a String to a Double in Python? - Be on the Right Side of Change
August 6, 2021 - Problem Formulation Given a string containing digits such as '123.456'. How to convert it to a double in Python such as 123.456? Solution Python doesn’t provide an explicit “double” data type. However, it provides the float type that behaves the same and has the same precision as doubles ...
🌐
Codingzap
codingzap.com › home › blog – programming & coding articles › convert string to double in python| 3 methods explained
Convert String to Double in Python| 3 Methods Explained
December 9, 2025 - As every input data is stored as a String in Python, to make it calculable, it should be in Double. The Float() Function is the best function to convert into Double. There are many different ways the Float() Function can be used.
🌐
Delft Stack
delftstack.com › home › howto › python › python string to double
How to Convert String to Double in Python | Delft Stack
February 2, 2024 - In the syntax, we provide the string parameter, and the Decimal() method returns a Decimal object representing the numeric value contained in the string. This method is particularly useful when you need high precision for decimal calculations. The code example below demonstrates how to use the Decimal() method to convert a string to a double in Python.
🌐
Replit
replit.com › home › discover › how to declare a double in python
How to declare a double in Python | Replit
2 weeks ago - # Declare a floating-point number (equivalent to double in other languages) my_float = 3.14159 print(type(my_float), my_float)--OUTPUT--<class 'float'> 3.14159 · This example highlights Python's dynamic typing. By assigning a number with a decimal point, like in my_float = 3.14159, you're implicitly creating a float without needing to declare the type beforehand. Using the type() function is a good practice to confirm the data type Python has inferred.
🌐
Quora
quora.com › What-exactly-is-the-difference-between-decimals-floating-point-numbers-and-doubles-in-Python-programming-They-seem-to-get-addressed-interchangeably
What exactly is the difference between decimals, floating-point numbers and doubles in Python programming? They seem to get addressed interchangeably. - Quora
Answer (1 of 3): There is no such thing as doubles in Python itself, but Internally a floating point value is stored in a double precision C floating point value (as defined by IEEE 754 [1]) Floating point values are limited precision - they ...
🌐
Quora
quora.com › How-do-you-import-a-double-in-Python
How to import a double in Python - Quora
Answer: there is no such thing as a double in Python. A float in Python always uses the available double floating point data type, which means that a float in Python is actually a ‘double’ if you wrote the same software in C - in a 64 bit ...
🌐
Python documentation
docs.python.org › 3 › tutorial › floatingpoint.html
15. Floating-Point Arithmetic: Issues and Limitations — Python 3.14.3 documentation
Since at least 2000, almost all machines use IEEE 754 binary floating-point arithmetic, and almost all platforms map Python floats to IEEE 754 binary64 “double precision” values.
🌐
Reddit
reddit.com › r/learnpython › til a python float is the same (precision) as a java double
r/learnpython on Reddit: TIL a Python float is the same (precision) as a Java double
May 1, 2025 -

TL;DR in Java a "double" is a 64-bit float and a "float" is a 32-bit float; in Python a "float" is a 64-bit float (and thus equivalent to a Java double). There doesn't appear to be a natively implemented 32-bit float in Python (I know numpy/pandas has one, but I'm talking about straight vanilla Python with no imports).

In many programming languages, a double variable type is a higher precision float and unless there was a performance reason, you'd just use double (vs. a float). I'm almost certain early in my programming "career", I banged my head against the wall because of precision issues while using floats thus I avoided floats like the plague.

In other languages, you need to type a variable while declaring it.

Java: int age=30
Python: age=30

As Python doesn't have (or require?) typing a variable before declaring it, I never really thought about what the exact data type was when I divided stuff in Python, but on my current project, I've gotten in the habit of hinting at variable type for function/method arguments.

def do_something(age: int, name: str):

I could not find a double data type in Python and after a bunch of research it turns out that the float I've been avoiding using in Python is exactly a double in Java (in terms of precision) with just a different name.

Hopefully this info is helpful for others coming to Python with previous programming experience.

P.S. this is a whole other rabbit hole, but I'd be curious as to the original thought process behind Python not having both a 32-bit float (float) and 64-bit float (double). My gut tells me that Python was just designed to be "easier" to learn and thus they wanted to reduce the number of basic variable types.

🌐
eSparkBiz
esparkinfo.com › double precision floating values
How to Use Double Precision Floating Values in Python
January 21, 2026 - Python’s float type stores values using 64 bits (double precision). You can confirm its precision with: import sys print(sys.float_info.dig) # Typically outputs: 15 · Best for general‑purpose numeric operations where ~15‑digit precision is enough.
Price   $12
Address   1001 - 1009 10th floor City Center 2, Sukan Mall Cross Road, Science City Rd, 380060, Ahmedabad
🌐
Python.org
discuss.python.org › python help
Datatypes: get back 80-bit long double, 80-bit float support in general, - Python Help - Discussions on Python.org
hi, sorry if silly question, I have! searched before asking, from another application ( gnumeric ) I managed to call’ python, do some calculation, and get back a result, with IEEE doubles. When trying to use 80-bit long doubles I can convert them to e.g. numpy longdoubles via longdouble( str( x ) ) or similar, but the return value is discarded as ‘Unsupported Python type: ’. I have searched deep enough that numpy uses a 80-bit structure for the value, zero-padded to 12...
Published   September 3, 2023
🌐
Quora
quora.com › What-do-two-asterisks-mean-in-Python
What do two asterisks mean in Python? - Quora
A secure internet connection doesn’t always mean your data is private. Here’s why people confuse the two. ... Two asterisks (**) in Python are used in two related but distinct contexts: exponentiation and argument unpacking / keyword argument handling. Clear distinctions and examples follow. ... Meaning: raise a to the power b (a to the b). ... Negative and fractional exponents follow floating-point rules: (-1) ** 0.5 raises a ValueError when using math.sqrt, but (-1)**2 → 1. 2) Double-star in function calls and definitions (keyword unpacking / keyword parameters)