Skip to content
Related Articles
Open in App
Not now

Related Articles

Python program to print odd numbers in a List

Improve Article
Save Article
  • Difficulty Level : Easy
  • Last Updated : 19 Jan, 2023
Improve Article
Save Article

Given a list of numbers, write a Python program to print all odd numbers in the given list. 

Example:

Input: list1 = [2, 7, 5, 64, 14]
Output: [7, 5]

Input: list2 = [12, 14, 95, 3, 73]
Output: [95, 3, 73]

Using for loop : Iterate each element in the list using for loop and check if num % 2 != 0. If the condition satisfies, then only print the number. 

Python3




# Python program to print odd Numbers in a List
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93]
 
# iterating each number in list
for num in list1:
 
    # checking condition
    if num % 2 != 0:
       print(num, end=" ")


Output

21 45 93 

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.

Using while loop : 

Python3




# Python program to print odd Numbers in a List
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93]
i = 0
 
# using while loop
while(i < len(list1)):
 
    # checking condition
    if list1[i] % 2 != 0:
        print(list1[i], end=" ")
 
    # increment i
    i += 1


Output

21 45 93 

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.

Using list comprehension

Python3




# Python program to print odd Numbers in a List
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93]
 
only_odd = [num for num in list1 if num % 2 == 1]
 
print(only_odd)


Output

[21, 45, 93]

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.

Using lambda expressions :

Python3




# Python program to print odd numbers in a List
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93, 11]
 
 
# we can also print odd no's using lambda exp.
odd_nos = list(filter(lambda x: (x % 2 != 0), list1))
 
print("Odd numbers in the list:", odd_nos)


Output

Odd numbers in the list: [21, 45, 93, 11]

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.

Method: Using pass 

Python3




# Python program to print odd numbers in a List
 
lst = [10, 21, 4, 45, 66, 93, 11]
for i in lst:
    if i % 2 == 0:
        pass
    else:
        print(i, end=" ")


Output

21 45 93 11 

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.

Method: Using recursion 

Python3




# Python program to print
# odd numbers in a list using recursion
 
 
def oddnumbers(list, n=0):
    # base case
    if n == len(list):
        exit()
    if list[n] % 2 != 0:
        print(list[n], end=" ")
    # calling function recursively
    oddnumbers(list, n+1)
 
 
list1 = [10, 21, 4, 45, 66, 93, 11]
print("odd numbers in the list:", end=" ")
oddnumbers(list1)


Output

odd numbers in the list: 21 45 93 11 

Time Complexity: O(N)
Auxiliary Space: O(1), As the function is tail recursive no extra stack space is used.

Method: Using enumerate function 

Python3




list1 = [2, 7, 5, 64, 14]
for a,i in enumerate(list1):
  if i%2!=0:
    print(i,end=" ")


Output

7 5 

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.

Method: Using numpy.array function

Python3




# Python program to print odd Numbers in a List
import numpy as np
# list of numbers
list1 = np.array([10, 21, 4, 45, 66, 93])
 
 
only_odd = list1[list1 % 2 == 1]
 
print(only_odd)


Output:

[21 45 93]

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.

Method: Using bitwise & operator

We can also find the number odd or not using & operator. We iterate the through the list using for loop. If num & 1

==1.If the condition satisfies print element.

Python3




#List of numbers
list1 = [9,5,4,7,2]
 
for ele in list1:
  if ele & 1: #Checking the element odd or not
    print(ele,end=" ")


Output

9 5 7 

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.

Method: Using bitwise | operator

We can also find the number odd or not using | operator. We iterate the through the list using for loop. If num | 1

==num. If the condition satisfies print element.

Python3




#List of numbers
list1 = [9,5,4,7,2]
 
for ele in list1:
  if ele | 1==ele: #Checking the element odd or not
    print(ele,end=" ")


Output

9 5 7 

Time Complexity: O(N)
Auxiliary Space: O(1), As constant extra space is used.


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!