将任何多维NumPy数组转换为元组的元组...维度数的不可知性

问题描述

this answer to Convert numpy ndarray to tuple of tuples in optimize method没有提供任何东西,但tuple(tuple(i) for i in a[:,0,:])表示这不存在,但我正在寻找类似于Numpy的.tolist().totuple()方法,因为您不需要事先知道的维数来生成元组的元组...

出于我的需要,这将仅适用于浮点型或整型数值数组。


解决方案

您可以使用递归函数,该函数独立于维度数转换为元组:

def totuple(a):
    try:
        return tuple(totuple(i) for i in a)
    except TypeError:
        return a
在此答案中找到: Convert numpy array to tuple

相关文章