I have two lists:
A = [2, 4, 6, 8, 10] B = [1, 3, 5, 7, 9]
How do I subtract each value in one list from the corresponding value in the other list and create a list such that:
C = [1, 1, 1, 1, 1]
Thanks.
subtract two lists using Zip() Function In this method, we'll pass the two input lists to the Zip Function. Then, iterate over the zip object using for loop. On every iteration, the program will take an element from list1 and list2, subtract them and append the result into another list.
Your goal in this kata is to implement a difference function, which subtracts one list from another and returns the result. It should remove all values from list a, which are present in list b.
Using a nested for-loop To calculate the subtract value between two different lists, we can simply use a nested for-loop. What is this? In this method, we'll compare all the second list items with the first one sequentially, and while traversing, we'll be appending every non-matching item to a new empty list.
The easiest way is to use a list comprehension
C = [a - b for a, b in zip(A, B)]
or map()
:
from operator import sub C = map(sub, A, B)
Since you appear to be an engineering student, you'll probably want to get familiar with numpy. If you've got it installed, you can do
>>> import numpy as np >>> a = np.array([2,4,6,8]) >>> b = np.array([1,3,5,7]) >>> c = a-b >>> print c [1 1 1 1]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With