Python - 减去两个数组的元素

时间:2018-04-11 21:08:58

标签: python arrays math subtraction

我是Python编程的新手,偶然发现了我无法弄清楚的在python中减去这个功能。我有两个0/1数组,大小都是400.我想从数组2中相应的元素中减去数组1中的每个元素。

例如,假设您有两个数组A = [0, 1, 1, 0, 0]B = [1, 1, 1, 0, 1] 然后我会期待A - B = [0 - 1, 1 - 1, 1 - 1, 0 - 0, 0 - 1] = [-1, 0, 0, 0, -1] 但是在python中我得到[255, 0, 0, 0, 255]

这255来自哪里?如何获得-1?

以下是一些其他信息: 我正在使用的实际变量是Y和LR_predictions。

Y =数组([[0,0,0,...,1,1,1]],dtype = uint8)

LR_predictions = array([0,1,1,...,0,1,0],dtype = uint8)

当我使用Y-LR_predictions或numpy.subtract(Y,LR_predictions)时

我得到:array([[0,255,255,...,1,0,1]],dtype = uint8)

由于

2 个答案:

答案 0 :(得分:0)

A = [0, 1, 1, 0, 0]
B = [1, 1, 1, 0, 1]
newlist = [e-B[c] for c,e in enumerate(A)]

尝试列表理解。您不能使用常规列表获得255。你应该得到TypeError: unsupported operand type(s) for -: 'list' and 'list'

答案 1 :(得分:0)

我无法复制此内容,但看起来这些数字是8位并包含了一些