【问题标题】:Are there any ways to calculate the subtraction of values from one 2-dimensional arrays in python? [closed]有什么方法可以计算python中一个二维数组的减法值吗? [关闭]
【发布时间】:2021-11-29 15:03:21
【问题描述】:

我正在寻找一种方法来计算一个二维数组的值的差异。

arr1 = [[1,2,3],[5,6,7]]

我的数组将是这样的,我希望我的代码减去 5-1,6-2 和 7-3。

有可能吗?

【问题讨论】:

  • “有可能吗?” - 是的。为什么不试试看看会发生什么?
  • 谢谢。我正在尝试,但我不知道如何解决。如果这个问题以某种方式冒犯了你,我很抱歉。
  • 如果您详细说明您的努力并让其他人看到您卡在哪里,那将是一个更好的问题。事实上,这读起来就像一个学生希望 Stack Overflow 为他们做作业。

标签: python arrays multidimensional-array


【解决方案1】:

下面的一个班轮似乎工作

arr1 = [[1,2,3],[5,6,7]]
arr = [x - arr1[0][idx] for idx,x in enumerate(arr1[1])]
print(arr)

输出

[4, 4, 4]

【讨论】:

  • ...为什么不zip()
  • @AKX - 你是对的..zip 是一个更经典的解决方案..
  • 它有效。谢谢,我很感激。
【解决方案2】:

你可以使用zip()

>>> arr1 = [[1,2,3], [5,6,7]]
>>> [b - a for (a, b) in zip(*arr1)]
[4, 4, 4]

zip(*x) 是一个有用的习惯用法,通常用于转置可迭代的可迭代对象,即将 [[1, 2, 3], [5, 6, 7]] 转换为 [[1, 5], [2, 6], [3, 7]]。)

【讨论】:

  • 非常感谢!
猜你喜欢
  • 2021-07-25
  • 2015-12-18
  • 2021-11-10
  • 2012-01-27
  • 1970-01-01
  • 2020-06-04
  • 1970-01-01
  • 2017-12-16
  • 1970-01-01
相关资源
最近更新 更多