python - How do you divide each element in a list by an int?

ID : 20247

viewed : 10

Tags : pythonpython

Top 5 Answer for python - How do you divide each element in a list by an int?

vote vote

99

The idiomatic way would be to use list comprehension:

myList = [10,20,30,40,50,60,70,80,90] myInt = 10 newList = [x / myInt for x in myList] 

or, if you need to maintain the reference to the original list:

myList[:] = [x / myInt for x in myList] 
vote vote

81

The way you tried first is actually directly possible with numpy:

import numpy myArray = numpy.array([10,20,30,40,50,60,70,80,90]) myInt = 10 newArray = myArray/myInt 

If you do such operations with long lists and especially in any sort of scientific computing project, I would really advise using numpy.

vote vote

72

>>> myList = [10,20,30,40,50,60,70,80,90] >>> myInt = 10 >>> newList = map(lambda x: x/myInt, myList) >>> newList [1, 2, 3, 4, 5, 6, 7, 8, 9] 
vote vote

65

The abstract version can be:

import numpy as np myList = [10, 20, 30, 40, 50, 60, 70, 80, 90] myInt = 10 newList  = np.divide(myList, myInt) 
vote vote

50

myList = [10,20,30,40,50,60,70,80,90] myInt = 10 newList = [i/myInt for i in myList] 

Top 3 video Explaining python - How do you divide each element in a list by an int?

Related QUESTION?