Last Updated : 11 Jul, 2025
There are several ways to print odd numbers in a given range in Python. Let’s look at different methods from the simplest to the more advanced.
Using for loop with if conditionIn this method, we iterate through all numbers in the range and check if each number is odd using the condition num%2! = 0. If true, the number is printed
Python
# Iterate through all numbers in the given range
for num in range(1, 11):
# check if a number is odd
if num % 2 != 0:
print(num)
Let's explore some other methods to print all odd numbers in a range.
Using filter() FunctionThe filter() function can be utilized to filter out elements from a sequence. You can use it in conjunction with a lambda function to print odd numbers.
Using List ComprehensionThis method creates a list of odd numbers in one line using list comprehension with a conditional check num% 2! = 0.
Python
start = 1
end = 10
# Use list comprehension to create a list of odd numbers
# Iterate through the range (start to end + 1)
odd_numbers = [num for num in range(start, end + 1) if num % 2 != 0]
print(odd_numbers)
Using Bitwise AND (&)
bitwise AND operator is useful when we need to check if a number is odd or even. The binary representation of an odd number always ends in 1, while an even number ends in 0. So, we can check if a number is odd by using num & 1.
Python
start = 1
end = 10
for num in range(start, end + 1):
# # Check if the last bit is 1 (odd number)
if num & 1:
print(num)
Python Program to Print all Odd Numbers in a Range
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4