Python – bit a bit Y de la lista

A veces, mientras programamos, tenemos un problema en el que es posible que necesitemos realizar ciertas operaciones bit a bit entre los elementos de la lista. Esta es una utilidad esencial ya que nos encontramos con operaciones bit a bit muchas veces. Analicemos ciertas formas en que se puede realizar esta tarea.
Método #1: Usar el operador reduce() + lambda + “&” 
Las funciones anteriores se pueden combinar para realizar esta tarea. Podemos emplear reduce() para acumular el resultado de la lógica AND especificada por la función lambda. Funciona solo con Python2.
 

Python3

# Python code to demonstrate working of
# Bitwise AND of List
# Using reduce() + lambda + "&" operator
 
# initializing list
test_list = [4, 6, 2, 3, 8, 9]
 
# printing original list
print("The original list is : " + str(test_list))
 
# Bitwise AND of List
# Using reduce() + lambda + "&" operator
res = reduce(lambda x, y: x & y, test_list)
 
# printing result
print("The Bitwise AND of list elements are : " + str(res))
Producción : 

The original list is : [4, 6, 2, 3, 8, 9]
The Bitwise AND of list elements are : 0

 

 
Método #2: Usando reduce() + operator.iand 
Esta tarea también se puede realizar usando este método. En este, la tarea realizada por la función lambda en el método anterior se realiza utilizando la función iand para la operación Y acumulativa. Funciona solo con Python2.
 

Python3

# Python code to demonstrate working of
# Bitwise AND of List
# Using functools.reduce() + operator.iand
from operator import iand
from functools import reduce
# initializing list
test_list = [4, 6, 2, 3, 8, 9]
 
# printing original list
print("The original list is : " + str(test_list))
 
# Bitwise AND of List
# Using functools.reduce() + operator.iand
res = reduce(iand, test_list)
 
# printing result
print("The Bitwise AND of list elements are : " + str(res))
Producción : 

The original list is : [4, 6, 2, 3, 8, 9]
The Bitwise AND of list elements are : 0

 

Publicación traducida automáticamente

Artículo escrito por manjeet_04 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 *