将任何多维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
相关文章