Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将一个列表中的值与另一个列表中的相应值相减_Python_List - Fatal编程技术网

Python 将一个列表中的值与另一个列表中的相应值相减

Python 将一个列表中的值与另一个列表中的相应值相减,python,list,Python,List,我有两份清单: A = [2, 4, 6, 8, 10] B = [1, 3, 5, 7, 9] 如何将一个列表中的每个值从另一个列表中的相应值中减去,并创建一个列表,以便: C = [1, 1, 1, 1, 1] 谢谢。最简单的方法是使用列表 C=[a-b代表a,b在zip中(a,b)] 或map(): 来自操作员导入子系统 C=地图(sub,A,B) 既然你看起来是一名工科学生,你可能想熟悉一下。如果你已经安装好了,你可以 >>> import numpy as np

我有两份清单:

A = [2, 4, 6, 8, 10]
B = [1, 3, 5, 7, 9]
如何将一个列表中的每个值从另一个列表中的相应值中减去,并创建一个列表,以便:

C = [1, 1, 1, 1, 1]

谢谢。

最简单的方法是使用列表

C=[a-b代表a,b在zip中(a,b)]
map()

来自操作员导入子系统
C=地图(sub,A,B)

既然你看起来是一名工科学生,你可能想熟悉一下。如果你已经安装好了,你可以

>>> 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]

也许这是有用的

C = []
for i in range(len(A)):
    difference = A[i] - B[i]
    C.append(difference)

如果这是一次性的,你会想要@sven marnach发布的内容。如果您要用它们做更多的事情,您可能需要一个实际的向量类,而不是列表。Numpy很受欢迎。我似乎错过了我实际上知道答案的问题:),但是是的,listcomp和map with operator.sub。我会选择地图或者numpy,但是是的+1工作得很好,谢谢。将调查“地图”,但尚未发现。再次感谢。@Sven Marnach在使用map()和numpy数组时,我遇到的另一个明显问题是数组长度不相等。如果A较短,是否可以从另一个列表中减去1个列表作为最短列表的长度?类似于:A:C=map(sub,A,B)@manengstudent:list理解版本在较短的序列上停止(因为
zip()。如果您更喜欢
map()。但是,这些函数返回迭代器,因此如果需要,您需要将结果包装在对
list()
的调用中。@SvenMarnach。太好了,工作很愉快。总是有些东西需要学习:)谢谢安德鲁,我真的会开始研究它,我已经安装了模块。谢谢你的建议。