Programa Python para contar números pares e impares en una lista

Dada una lista de números, escriba un programa Python para contar números pares e impares en una lista. Ejemplo:

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

Input: list2 = [12, 14, 95, 3]
Output: Even = 2, odd = 2

Ejemplo 1: cuente los números pares e impares de la lista dada usando el bucle for Itere cada elemento de la lista usando el bucle for y verifique si num % 2 == 0, la condición para verificar los números pares. Si la condición se cumple, entonces aumente el conteo par; de lo contrario, aumente el conteo impar. 

Python3

# Python program to count Even
# and Odd numbers in a List
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93, 1]
 
even_count, odd_count = 0, 0
 
# iterating each number in list
for num in list1:
     
    # checking condition
    if num % 2 == 0:
        even_count += 1
 
    else:
        odd_count += 1
         
print("Even numbers in the list: ", even_count)
print("Odd numbers in the list: ", odd_count)
Producción:

Even numbers in the list:  3
Odd numbers in the list:  4

Ejemplo 2: Usando el ciclo while 

Python3

# Python program to count Even and Odd numbers in a List
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93, 11]
 
even_count, odd_count = 0, 0
num = 0
 
# using while loop    
while(num < len(list1)):
     
    # checking condition
    if list1[num] % 2 == 0:
        even_count += 1
    else:
        odd_count += 1
     
    # increment num
    num += 1
     
print("Even numbers in the list: ", even_count)
print("Odd numbers in the list: ", odd_count)
Producción:

Even numbers in the list:  3
Odd numbers in the list:  4

Ejemplo 3: uso de expresiones lambda de Python 

Python3

# list of numbers
list1 = [10, 21, 4, 45, 66, 93, 11]
 
odd_count = len(list(filter(lambda x: (x%2 != 0) , list1)))
 
# we can also do len(list1) - odd_count
even_count = len(list(filter(lambda x: (x%2 == 0) , list1)))
 
print("Even numbers in the list: ", even_count)
print("Odd numbers in the list: ", odd_count)
Producción:

Even numbers in the list:  3
Odd numbers in the list:  4

Ejemplo 4: uso de la comprensión de listas 

Python3

# Python program to print odd Numbers in a List
  
# list of numbers
list1 = [10, 21, 4, 45, 66, 93, 11]
  
only_odd = [num for num in list1 if num % 2 == 1]
odd_count = len(only_odd)
  
print("Even numbers in the list: ", len(list1) - odd_count)
print("Odd numbers in the list: ", odd_count)
Producción:

Even numbers in the list:  3
Odd numbers in the list:  4

Ejemplo 5: Uso de recursividad

Python3

# Python program to count Even
# and Odd numbers in a List
# using recursion
even_count=0# even counter
i=0#index, so that we can check if list[i] is even or odd
odd_count=0#odd counter
def evenoddcount(lst):
    # difining local counters as global variable
    global even_count
    global odd_count
    global i
    if lst[i]%2==0:#check if number is even
        even_count+=1
    else:#if number is odd
        odd_count+=1
    if i in range(len(lst)-1):
        i+=1#increment i
        evenoddcount(lst)#calling fonction recursively
    else:
        print("Even numbers in the list: ", even_count)
        print("Odd numbers in the list: ", odd_count)
list1 = [10, 21, 4, 45, 66, 93, 1]
evenoddcount(list1)
#This code is contributed by Shivesh Kumar Dwivedi
Producción

Even numbers in the list:  3
Odd numbers in the list:  4

Ejemplo 6: uso del operador Bitwise XOR

La idea es verificar si el último bit del número está configurado o no. Si se establece el último bit, el número es impar; de lo contrario, es par. Como sabemos, la operación XOR bit a bit del número en 1 incrementa el valor del número en 1 si el número es par; de lo contrario, disminuye el valor del número en 1 si el valor es impar.

COMPROBAR SI EL NÚMERO ES PAR O IMPAR UTILIZANDO EL OPERADOR XOR

Python3

# Python program to count Even
# and Odd numbers in a List
# using Bitwise XOR
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93, 1]
 
even_count, odd_count = 0, 0
for num in list1:
       
    # checking condition
    if num ^ 1 == num + 1:
        even_count += 1
   
    else:
        odd_count += 1
           
print("Even numbers in the list: ", even_count)
print("Odd numbers in the list: ", odd_count)
# This code is contributed by Shivesh Kumar Dwivedi
Producción

Even numbers in the list:  3
Odd numbers in the list:  4

Ejemplo 7: Uso del operador AND
bit a bit La idea es verificar si el último bit del número está configurado o no. Si se establece el último bit, el número es impar; de lo contrario, es par.
Como sabemos, la operación AND bit a bit del número por 1 será 1, si es impar porque el último bit ya estará establecido. De lo contrario, dará 0 como salida. 

Python3

# Python program to count Even
# and Odd numbers in a List
# using Bitwise AND
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93, 1]
 
even_count, odd_count = 0, 0
for num in list1:
       
    # checking condition
    if not num & 1:
        even_count += 1
   
    else:
        odd_count += 1
           
print("Even numbers in the list: ", even_count)
print("Odd numbers in the list: ", odd_count)
# This code is contributed by Shivesh Kumar Dwivedi
Producción

Even numbers in the list:  3
Odd numbers in the list:  4

Ejemplo 8 : uso del operador OR bit a bit

La idea es verificar si el último bit del número está configurado o no. Si se establece el último bit, el número es impar; de lo contrario, es par. Como sabemos, la operación OR bit a bit del número en 1 incrementa el valor del número en 1 si el número es par; de lo contrario, permanecerá sin cambios. Entonces, si después de la operación OR del número con 1 da un resultado que es mayor que el número, entonces es par y devolveremos verdadero; de lo contrario, es impar y devolveremos falso.

Python3

# Python program to count Even
# and Odd numbers in a List
# using Bitwise OR
 
# list of numbers
list1 = [10, 21, 4, 45, 66, 93, 1]
 
even_count, odd_count = 0, 0
for num in list1:
       
    # checking condition
    if num | 1 > num:
        even_count += 1
   
    else:
        odd_count += 1
           
print("Even numbers in the list: ", even_count)
print("Odd numbers in the list: ", odd_count)
# This code is contributed by Shivesh Kumar Dwivedi
Producción

Even numbers in the list:  3
Odd numbers in the list:  4

Publicación traducida automáticamente

Artículo escrito por Shivam_k y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *