【发布时间】:2019-08-26 12:36:09
【问题描述】:
我有一个包含一列和许多原始文件的文本文件 (BBB.txt)。我想将所有数字转换为科学计数法。我正在尝试如下:
z= loadtxt ('BBB.txt')
for i in z:
with open ('ff.txt','w') as h:
y=np.format_float_scientific(z)
h.write("\n".join(map(lambda z: '%f' % z, y)))
我会遇到错误“只有 size-1 的数组可以转换为 Python 标量”。这里有什么问题?
文本文件如下所示,但包含更多原始文件:
0.000000
0.261869
0.980796
2.119419
3.218744
3.875440
-38.159080
-54.630055
-69.909509
【问题讨论】:
-
x在这里指的是什么? -
这是错误的。它应该是“z”
-
当函数需要单个值但您传递一个数组时,返回错误“只有长度为 1 的数组可以转换为 Python 标量”。那么请您添加有关您的文本文件内容的更多信息吗?
-
我在问题中添加了一个示例。
-
试试
y=np.format_float_scientific(z[0]),我猜这里的 z 仍然是一个数组,会导致错误。编辑:这是错误的。z是整个文件
标签: python numpy text scientific-notation