【问题标题】:Array from the last element to the first [duplicate]从最后一个元素到第一个元素的数组[重复]
【发布时间】:2021-03-14 17:10:20
【问题描述】:

我有一个这样的数组:

array([[-1.2825],
       [-0.9202],
       [-0.0809],
       [-0.1469],
       [-0.3981],
       [-0.1422],
       [-0.0132]])

我希望第一个元素是最后一个,第二个元素是最后一个等。我该怎么做?

array([[-0.0132],
       [-0.1422],
       [-0.3981],
       [-0.1469], 
       [-0.0809],
       [-0.9202],
       [-1.2825]])

【问题讨论】:

  • “数组”是指 NumPy 数组?
  • 你有没有尝试过?出了什么问题?

标签: python arrays


【解决方案1】:

您可以使用 numpy 中的翻转功能:

import numpy as np
yourarray = np.array([[-0.0132],
       [-0.1422],
       [-0.3981],
       [-0.1469], 
       [-0.0809],
       [-0.9202],
       [-1.2825]])  
reversed_array = np.flip(yourarray)

【讨论】:

  • 谢谢!你可能知道我现在如何将这个数组更改为以下形式的一维数组:np.array([-0.0132, -0.1422, -0.3981, -0.1469, -0.0809, -0.9202, -1.2825]) 即没有括号?
  • 可以,可以使用flatten方法:reversed_array.flatten()
【解决方案2】:

假设它的列表或numpy:

a= a[::-1]

【讨论】:

  • 这是迄今为止最好的答案。
【解决方案3】:

试试这个:

for i in range(len(array)):
    if i + i + 1 > len(array):
        break
    array[i], array[-i - 1] = array[-i - 1], array[i]

【讨论】:

  • 这是一个非常糟糕的解决方案。查看其他解决方案,了解如何还原列表或数组。
猜你喜欢
  • 2014-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-22
  • 1970-01-01
  • 1970-01-01
  • 2013-01-14
  • 1970-01-01
相关资源
最近更新 更多