【问题标题】:How to find the distance between the elements of a list?如何找到列表元素之间的距离?
【发布时间】:2018-11-24 18:18:06
【问题描述】:

我有列表L1 = [123,543]L2 = [321,279]。使用 Zip 我们可以合并两个列表

n = [list(a) for a in zip(L1,L2)]
for i in (n):
    print (i)

输出:

[123, 321]
[543, 279]

python中如何求List元素之间的距离? 示例:123321 之间的差异是 0 (2 + 0 -2)。 543279 的区别是 6 (-3 + 3 + 6)。

【问题讨论】:

  • 请展示您为解决问题所做的努力。

标签: python list zip


【解决方案1】:

你可以再次zip求数字的差并求和:

L1 = [123,543]
L2 = [321,279]

lst = []
for x, y in zip(L1, L2):
   lst.append(sum(int(b) - int(a) for a, b in zip(str(x), str(y))))

print(lst)
# [0, 6]

【讨论】:

    【解决方案2】:

    试试这个:

    In [37]: for i,j in zip(L1, L2):
        ...:     b = list(map(int,list(str(i))))
        ...:     c = list(map(int,list(str(j))))
        ...:     d = [x1 - x2 for (x1, x2) in zip(b, c)]
        ...:     print(sum(d))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-23
      • 2021-07-14
      • 1970-01-01
      • 1970-01-01
      • 2022-11-21
      • 1970-01-01
      相关资源
      最近更新 更多