Numbers help us count and measure things in programs. Integers (int) are whole numbers, and floats are numbers with decimals.
Numeric values (int and float behavior) in Python
Start learning this pattern below
Jump into concepts and practice - no test required
integer_number = 10 float_number = 3.14
Integers are written without a decimal point.
Floats have a decimal point or use scientific notation like 1e3 (which means 1000).
a = 5 b = 2.0 print(type(a)) # <class 'int'> print(type(b)) # <class 'float'>
float().x = 7 y = float(x) print(y) # 7.0
z = 4.5 w = int(z) print(w) # 4
This program shows adding and multiplying int and float numbers, and converting between them.
num1 = 8 num2 = 3.5 sum_result = num1 + num2 product = num1 * num2 int_conversion = int(num2) float_conversion = float(num1) print(f"Sum: {sum_result}") print(f"Product: {product}") print(f"Integer conversion of {num2}: {int_conversion}") print(f"Float conversion of {num1}: {float_conversion}")
Adding an int and a float results in a float.
Converting float to int removes decimals without rounding.
Use float when you need decimals, int when you want whole numbers only.
Integers are whole numbers without decimals.
Floats are numbers with decimals.
You can convert between int and float using int() and float().
Practice
Which of the following is an example of a float in Python?
1. 42
2. 3.14
3. -7
4. 0Solution
Step 1: Understand what a float is
A float is a number with a decimal point, like 3.14.Step 2: Identify the float among options
Only 3.14 has a decimal point, so it is a float.Final Answer:
3.14 -> Option BQuick Check:
Float = 3.14 [OK]
- Choosing integers as floats
- Confusing negative numbers with floats
- Ignoring decimal points
Which of the following is the correct way to convert the float 5.7 to an integer in Python?
Solution
Step 1: Recall how to convert float to int
Use the int() function with a float value as argument.Step 2: Check each option
int(5.7) correctly converts float 5.7 to int 5. int('5.7') causes error, int(5,7) is invalid syntax.Final Answer:
int(5.7) -> Option DQuick Check:
int(5.7) = 5 [OK]
- Trying int() on string with decimal
- Using wrong syntax like int(5,7)
- Using float() instead of int()
What is the output of the following code?
x = 7 / 2
print(type(x))
print(x)Solution
Step 1: Understand division operator in Python 3
Division with / always returns a float, even if numbers divide evenly.Step 2: Evaluate the code
7 / 2 = 3.5, which is a float. So type(x) is <class 'float'> and x is 3.5.Final Answer:
<class 'float'>\n3.5 -> Option CQuick Check:
7 / 2 = 3.5 float [OK]
- Assuming integer division with /
- Confusing type output format
- Expecting 3 instead of 3.5
Find the error in this code snippet:
num = 4.8
num_int = int(num)
print(num_int + ' is the integer value')Solution
Step 1: Check conversion from float to int
int(4.8) converts float 4.8 to int 4 without error.Step 2: Check print statement
Adding int and string directly causes a TypeError in Python.Final Answer:
Cannot add int and str directly -> Option AQuick Check:
int + str causes TypeError [OK]
- Thinking int() conversion fails
- Ignoring type mismatch in addition
- Assuming print syntax error
You have a list of mixed numbers: nums = [1, 2.5, 3, 4.75, 5]. You want to create a new list with all numbers converted to integers by dropping decimals. Which code correctly does this?
Solution
Step 1: Understand the goal
We want to convert all numbers to int by dropping decimals, not rounding.Step 2: Evaluate each option
C uses int() which drops decimals correctly. A converts to string, not int. B converts to float, not int. D rounds numbers, which changes values.Final Answer:
new_nums = [int(n) for n in nums] -> Option AQuick Check:
int() drops decimals, list comprehension applies to all [OK]
- Using round() instead of int()
- Converting to string instead of int
- Using float() which keeps decimals
