>>> a = "545.2222"
>>> float(a)
545.22220000000004
>>> int(float(a))
545
Answer from Harley Holcombe on Stack Overflow
Top answer
1 of 16
3117
>>> a = "545.2222"
>>> float(a)
545.22220000000004
>>> int(float(a))
545
2 of 16
605

Python2 method to check if a string is a float:

def is_float(value):
  if value is None:
      return False
  try:
      float(value)
      return True
  except:
      return False

For the Python3 version of is_float see: Checking if a string can be converted to float in Python

A longer and more accurate name for this function could be: is_convertible_to_float(value)

What is, and is not a float in Python may surprise you:

The below unit tests were done using python2. Check it that Python3 has different behavior for what strings are convertable to float. One confounding difference is that any number of interior underscores are now allowed: (float("1_3.4") == float(13.4)) is True

val                   is_float(val) Note
--------------------  ----------   --------------------------------
""                    False        Blank string
"127"                 True         Passed string
True                  True         Pure sweet Truth
"True"                False        Vile contemptible lie
False                 True         So false it becomes true
"123.456"             True         Decimal
"      -127    "      True         Spaces trimmed
"\t\n12\r\n"          True         whitespace ignored
"NaN"                 True         Not a number
"NaNanananaBATMAN"    False        I am Batman
"-iNF"                True         Negative infinity
"123.E4"              True         Exponential notation
".1"                  True         mantissa only
"1_2_3.4"             False        Underscores not allowed
"12 34"               False        Spaces not allowed on interior
"1,234"               False        Commas gtfo
u'\x30'               True         Unicode is fine.
"NULL"                False        Null is not special
0x3fade               True         Hexadecimal
"6e7777777777777"     True         Shrunk to infinity
"1.797693e+308"       True         This is max value
"infinity"            True         Same as inf
"infinityandBEYOND"   False        Extra characters wreck it
"12.34.56"            False        Only one dot allowed
u'ๅ››'                 False        Japanese '4' is not a float.
"#56"                 False        Pound sign
"56%"                 False        Percent of what?
"0E0"                 True         Exponential, move dot 0 places
0**0                  True         0___0  Exponentiation
"-5e-5"               True         Raise to a negative number
"+1e1"                True         Plus is OK with exponent
"+1e1^5"              False        Fancy exponent not interpreted
"+1e1.3"              False        No decimals in exponent
"-+1"                 False        Make up your mind
"(1)"                 False        Parenthesis is bad

You think you know what numbers are? You are not so good as you think! Not big surprise.

Don't use this code on life-critical software!

Catching broad exceptions this way, killing canaries and gobbling the exception creates a tiny chance that a valid float as string will return false. The float(...) line of code can failed for any of a thousand reasons that have nothing to do with the contents of the string. But if you're writing life-critical software in a duck-typing prototype language like Python, then you've got much larger problems.

๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ python โ€บ convert-string-to-float-in-python
Convert String to Float in Python - GeeksforGeeks
July 15, 2025 - float() function is an efficient way to convert a string into a floating-point number. As a built-in function, it returns a value of type float and works best with well-formatted numeric strings.
Discussions

Python - decimal places (putting floats into a string) - Stack Overflow
where "0" refers to the first value passed into str.format, ":" says "here comes the format specification", and ".2f" means "floating point number with two decimal places of precision". This is the suggested way of formatting strings now. ... For Python version 3.6 and upwards there is also ... More on stackoverflow.com
๐ŸŒ stackoverflow.com
How I convert float to string in this case?
You shouldn't call your variable sum, as that's a name of a built in function: https://docs.python.org/3/library/functions.html#sum Your problem however, stems from trying to add a string to a float. Could you please tell me, what is Adam + 5? Well, you can't, because it makes no mathematical sense. You didn't save the string representation str(sum), so sum never changed to a string What your research found is f-strings and they are very easy to use. Try: print(f"the sum of the values is {sum}") Simply, put an f before a string starts, then any string that you want goes between " and ", while any variables or other values go between { and } More on reddit.com
๐ŸŒ r/learnpython
4
2
August 21, 2022
Is it legal/valid to use float() to convert a string containing integer to float?
Hi, Iโ€™m wondering if float(โ€˜10โ€™) (or any integer string) can be safely converted using float() to float number. Documentation of float() states that: the input must conform to the following grammar after leading and trailing whitespace characters are removed: sign ::= "+" | "-" infinity ... More on discuss.python.org
๐ŸŒ discuss.python.org
2
December 22, 2022
Converting strings into floats in Python

Try float(nameOfString), I'm not a python guy but it looks like that would work. Are you using Python3?

More on reddit.com
๐ŸŒ r/learnprogramming
13
1
November 11, 2015
๐ŸŒ
Reddit
reddit.com โ€บ r/learnpython โ€บ python string to float conversion
r/learnpython on Reddit: Python string to float conversion
July 29, 2024 -

Hi all, I have a string a = '1721244344.700249000', I want to convert it to a floating value.

Float() is returning only 2 places after decimal point. Like 1721244344.7

Is there a way I can convert the entire string to a floating point value and get all the decimal (upto 9 places after decimal point)?

I have to use python v2.7 for this.

Edit: I do not have problem in printing the all 9 decimal places but I need the floating value so that I can subtract another value so that I get the difference with accuracy upto 9 th decimal point.

๐ŸŒ
W3Schools
w3schools.com โ€บ python โ€บ python_string_formatting.asp
Python String Formatting
To format values in an f-string, add placeholders {}, a placeholder can contain variables, operations, functions, and modifiers to format the value. ... A placeholder can also include a modifier to format the value.
๐ŸŒ
Board Infinity
boardinfinity.com โ€บ blog โ€บ converting-string-to-float-into-python
Convert String to Float in Python | Board Infinity
July 11, 2023 - In this solution, we use the most common method to convert any data type including a string to float in Python; float().
๐ŸŒ
Pierian Training
pieriantraining.com โ€บ home โ€บ tutorial: how to convert string to float in python
Convert String to Float in Python: A Beginner's Guide
April 27, 2023 - Discover how to use Python to convert a string into float in a few easy steps. Learn the syntax, detailed examples, and how to handle errors.
๐ŸŒ
DigitalOcean
digitalocean.com โ€บ community โ€บ tutorials โ€บ python-convert-string-to-float
How to Convert String to Float in Python: Complete Guide with Examples | DigitalOcean
July 10, 2025 - Learn how to convert strings to floats in Python using float(). Includes syntax, examples, error handling tips, and real-world use cases for data parsing.
Find elsewhere
๐ŸŒ
Python documentation
docs.python.org โ€บ 3 โ€บ tutorial โ€บ inputoutput.html
7. Input and Output โ€” Python 3.14.3 documentation
The string module contains support for a simple templating approach based upon regular expressions, via string.Template. This offers yet another way to substitute values into strings, using placeholders like $x and replacing them with values from a dictionary.
๐ŸŒ
IONOS
ionos.com โ€บ digital guide โ€บ websites โ€บ web development โ€บ converting python strings to floats
How to convert Python strings to floats - IONOS
January 2, 2025 - In programs that work with various kinds of data, float() is used to ensure that data remains consistent by converting values into a numerical format. To convert Python strings to floats, use float() and enter a valid string as the argument:
๐ŸŒ
Kodeclik
kodeclik.com โ€บ how-to-convert-string-to-float-in-python
Convert a string to float in Python
October 16, 2024 - To convert a string to float in Python just use the type conversion function float() and it will convert the string value to a floating point value assuming the original string contained only numbers.
๐ŸŒ
Flexiple
flexiple.com โ€บ python โ€บ string-to-float-python
Convert string to float in Python - Flexiple Tutorials - Flexiple
March 11, 2022 - In this solution, we use the most common method to convert any data type including a string to float in Python; float().
๐ŸŒ
Hostman
hostman.com โ€บ tutorials โ€บ how to convert string to float in python
Python: How to Convert String to Float
March 31, 2025 - Again weโ€™ve our float_list here is populated from the string_list and the items are converted from strings to floats. Python type casting is a fundamental concept that involves converting one data type to another. It provides compatibility and flexibility for programmers in their code.
Price ย  $
Call ย  +1 844 286 2130
Address ย  1999 Harrison St 1800 9079, 94612, Oakland
๐ŸŒ
DEV Community
dev.to โ€บ itsmycode โ€บ convert-string-to-float-in-python-3a62
Convert String to Float in Python - DEV Community
September 17, 2021 - The float method accepts only one parameter, which is optional. If you donโ€™t pass any parameter, then the method will return 0.0 as output. input= "33.455" print(input) print('Before conversion',type(input)) # converting string to float output = float(input) print(output) print('After conversion',type(output))
๐ŸŒ
Programiz
programiz.com โ€บ python-programming โ€บ examples โ€บ string-to-float-or-int
Python Program to Parse a String to a Float or Int
If the string is a float numeral, you can convert it into a float type using float(), and then parse it to an integer using int().
๐ŸŒ
Reddit
reddit.com โ€บ r/learnpython โ€บ how i convert float to string in this case?
r/learnpython on Reddit: How I convert float to string in this case?
August 21, 2022 -

I tried

n1=input('First number')
n2=input('Second number')
sum = float(n1) + float(n2)
str(sum)
print('The sum of the values is: ' + sum)

My error is:

TypeError: can only concatenate str (not "float") to str

I tried googling this error and got some answers like print(f' which I didn't really understand, and some others that looked a little complicated, I am very new.

I am trying to improve my googling skills.

๐ŸŒ
TutorialsPoint
tutorialspoint.com โ€บ how-to-parse-a-string-to-float-or-int-in-python
How to parse a string to float or int in python?
The most straightforward approach is using the int() and float() functions directly within a try-except block to catch ValueError exceptions. In the following example, the try block attempts to convert the string. If the conversion fails, a ValueError is raised.
๐ŸŒ
Python.org
discuss.python.org โ€บ python help
Is it legal/valid to use float() to convert a string containing integer to float? - Python Help - Discussions on Python.org
December 22, 2022 - Hi, Iโ€™m wondering if float(โ€˜10โ€™) (or any integer string) can be safely converted using float() to float number. Documentation of float() states that: the input must conform to the following grammar after leading and trailing whitespace characters are removed: sign ::= "+" | "-" infinity ::= "Infinity" | "inf" nan ::= "nan" numeric_value ::= floatnumber | infinity | nan numeric_string ::= [sign] numeric_value where floatnumber, described in Floating point li...