-2

如何for循环访问索引 i 和 j?

mu_1 = [1, 2, 3, 4]
mu_2 = [5, 6, 7, 8]
mu_3 = [9, 10, 11, 12]
mu_4 = [13, 14, 15, 16]


som = 0
for i in range(1, 4):
    for j in range(i+1, 5):
        r = (mu_i - mu_j)
        som = som + r

我想得到这个输出:

som = ((mu_1 - mu_2) + (mu_1 - mu_3) + (mu_1 - mu_4) +
       (mu_2 - mu_3) + (mu_2 - mu_4) +
       (mu_3 - mu_4))
4

2 回答 2

1

我认为您要问的是如何使用索引ij参考您的mu_n列表。根据下面的代码,您可以将所有列表添加到另一个列表中,并对其进行索引。

但是,您不能在 Python 中减去列表。

注意:这不起作用,因为-不支持(减法)操作list

mu = [[1, 2, 3, 4],
      [5, 6, 7, 8],
      [9, 10, 11, 12],
      [13, 14, 15, 16]]

som = 0
for i in range(4):
    for j in range(i+1, 4):
        r = (mu[i] - mu[j])
        som = som + r

最后

知道 Python 中的索引从 0 开始,您可能会受益。

于 2021-06-19T12:42:30.213 回答
0

目前尚不清楚您到底想要实现什么,但您可以使用该enumerate函数迭代一个可迭代对象及其索引。

for i, x in enumerate([1, 5, 13, 6]):
    # Here, `i` is the items index and `x` the item itself
    pass
于 2021-06-19T12:09:47.607 回答