Tengo una lista
a = [49, 51, 53, 56]
¿Cómo resto 13 de cada valor entero en la lista?
python
python-3.x
Jaycodez
fuente
fuente
def minus13(a):
la línea de arriba y sangrando un nivel.a[:]
en el lhs en lugar de simplemente asignar de nuevo aa
? ¿Noa[:]
crea una copia de la lista?a = [x - 13 for x in a]
funcionará igual de bien y es menos confuso.Si trabaja mucho con números, es posible que desee echar un vistazo a NumPy . Le permite realizar todo tipo de operaciones directamente en matrices numéricas. Por ejemplo:
>>> import numpy >>> array = numpy.array([49, 51, 53, 56]) >>> array - 13 array([36, 38, 40, 43])
fuente
Puede utilizar la función map () :
a = list(map(lambda x: x - 13, a))
fuente
Para aclarar una solución ya publicada debido a preguntas en los comentarios.
import numpy array = numpy.array([49, 51, 53, 56]) array = array - 13
dará salida:
fuente
Esto funcionará:
for i in range(len(a)): a[i] -= 13
fuente
i
) repita todos los valores de índice posibles. Esta variable de índice es necesaria para mutar cada elemento de la lista.