单句减法

时间:2018-09-25 09:44:17

标签: python python-2.7 list for-loop subtraction

我是python 2.7的新用户。

我的问题是,我需要进行计算。 我有一个矩阵。

A=[1, 2, 8, 10]

我想自动进行计算。

A[1]-A[0]=1
A[2]-A[1]=6

,依此类推。

但是我不知道这样做。 到目前为止,我有:

for n in xy_list:
    B=n[0][1:]-n[0][:3]
print B

结果显示:

  

TypeError:--'list'和'int'的不受支持的操作数类型

希望您能提供帮助!

2 个答案:

答案 0 :(得分:0)

据我所知,您根本不了解遍历数组/列表。

如果循环遍历列表,则具有列表xy_list和迭代器n。在这种情况下,n不是数组。它只是一个递增的索引。您必须访问索引为n列表。因此,最好不要编写n[0],而是写xy_list[n],说“ xy_list中元素的索引为n”。

如果要从xy_list [1]中减去xy_list [0],则必须编写B = xy_list[1] - xy_list[0]

如果要对列表中的所有元素执行此操作,则必须编写一个循环,以获取当前索引中的元素并减去索引n-1

中的元素

答案 1 :(得分:0)

您可以尝试这种方式:

for n in range(1, len(A)):
    print(A[n] - A[n-1])

在这里,我假设您总是想要A[n] - A[n-1],其中n是A中的整数索引。

如果要以花哨的方式打印它:

for x in range(1, len(A)):
    print("A[{}] - A[{}]: {}".format(x, x-1, A[x] - A[x-1]))


A[1] - A[0]: 1
A[2] - A[1]: 6
A[3] - A[2]: 2