2. Type conversion functions¶
Sometimes it is necessary to convert values from one type to another. Python provides a few simple functions that will allow us to do that. The functions int()
, float()
and str()
will (attempt to) convert their arguments into types int
, float
and str
respectively. We call these type conversion functions.
The int()
function can take a floating point number or a string, and turn it into an integer. For floating point numbers, it discards the decimal portion of the number - a process we call truncation towards zero on the number line. Let us see this in action:
The last case shows that a string has to be a syntactically legal number, otherwise you’ll get one of those pesky runtime errors. Modify the example by deleting the bottles
and rerun the program. You should see the integer 23
.
The type converter float()
can turn an integer, a float, or a syntactically legal string into a float.
The type converter str()
turns its argument into a string. Remember that when we print a string, the quotes are removed. However, if we print the type, we can see that it is definitely str
.
Check your understanding
- Nothing is printed. It generates a runtime error.
- The statement is valid Python code. It calls the int() function on 53.785 and then prints the value that is returned.
- 53
- The int() function truncates all values after the decimal and prints the integer value.
- 54
- When converting to an integer, the int() function does not round.
- 53.785
- The int() function removes the fractional part of 53.785 and returns an integer, which is then printed.
What value is printed when the following statement executes?
print( int(53.785) )