2016-04-10 24 views
-4

嗨,我知道有几个人有这个问题,但没有一个我见过的解决方案正在帮助。我正在读取一组数据,读取文件,然后根据数据创建数组以输入此等式: Dist = 10 ** ((app_m - abs_M + 5.) /5) 其中,我的app_m和abs_M是数据中的数组。获取“类型错误:不支持的操作数类型为 - :'列表'和'列表'

我使用Python 2.7,刚刚学习,所以如果事情能尽可能简单地将是巨大的,说明

+1

不能减去列表,以另一种方式做。什么是期望的输出?你希望'[4,3] - [2,1]'产生成[2,2]',还是...?你如何期望在这些列表中追加'5'? –

+2

寻求调试帮助的问题(**“为什么这个代码不工作?”**)必须包含所需的行为,*特定的问题或错误*和*在问题本身中重现它所需的最短代码* **。没有**明确问题陈述**的问题对其他读者没有用处。请参阅:[如何创建最小,完整和可验证示例](http://stackoverflow.com/help/mcve)。 – MattDMo

回答

0

我终于解决了这个与

Dist = [] 
for i in range(len(app_m)): 
    Dist.append((float(app_m[i]) - float(abs_M[i]) + 5.)/5) 
1

不能使用list - list

你可以改变像你的代码这

import numpy as np 
Dist = 10 ** ((np.array(app_m) - np.array(abs_M) + 5.) /5) 
相关问题