Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Subtract values in one list from corresponding values in another list

Tags:

python

list

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.

like image 894
manengstudent Avatar asked Jul 26 '12 20:07

manengstudent


People also ask

How do you subtract one list from another list?

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.

What subtracts one list from another and return the result?

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.

How do you subtract two nested lists in python?

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.


2 Answers

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) 
like image 69
Sven Marnach Avatar answered Sep 21 '22 16:09

Sven Marnach


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] 
like image 43
Andrew Jaffe Avatar answered Sep 20 '22 16:09

Andrew Jaffe