首页 > 解决方案 > 如何从文本文件中导入与numpy数组格式相同的数组?

问题描述

我有一个包含多维数组的文本文件:

1  2  3
1  2  3
1  2  3
1  2  3.

当我使用np.loadtxt. 我得到的数组格式为:

[[1.0  2.0  3.0]
 [1.0  2.0  3.0]
 [1.0  2.0  3.0]
 [1.0  2.0  3.0]]

但我想要以下格式:

[[1.0, 2.0, 3.0],
 [1.0, 2.0, 3.0],
 [1.0, 2.0, 3.0],
 [1.0, 2.0, 3.0]]

我该怎么做?

标签: pythonarraysnumpy

解决方案


只需repr在打印 numpy 数组时使用,这将保持所有逗号完整,正常print删除所有逗号!或者您可以使用https://docs.python.org/3/library/pprint.html#pprint.pprint

import numpy as np
import pprint
arr = np.loadtxt('file.json')
print(arr)
#[[1. 2. 3.]
# [1. 2. 3.]
# [1. 2. 3.]
# [1. 2. 3.]]
print(repr(arr))
#array([[1., 2., 3.],
#       [1., 2., 3.],
#       [1., 2., 3.],
#       [1., 2., 3.]])
pprint.pprint(arr)
#array([[1., 2., 3.],
#       [1., 2., 3.],
#       [1., 2., 3.],
#       [1., 2., 3.]])

推荐阅读