python - 将 Numpy 数组转换为列表会打印出额外的零吗? Python

标签 python numpy

<分区>

我使用 numpy 创建了一个数组,需要将每个值转换成一个字符串列表。

这是我发现有效的解决方案:

props = np.arange(0.2,0.5,0.1)
props = [str(i) for i in props]

然而,当我打印出来时,结果是这样的:

Out[177]: ['0.2', '0.30000000000000004', '0.4000000000000001']]

我想要的结果是['0.2', '0.3', '0.4']

我做错了什么?

是否有更有效的方法,或者这是一种复杂的方法?

最佳答案

您可以使用 np.around :

import numpy as np

props = np.arange(0.2,0.5,0.1)
props = np.around(props, 1)
props = [str(i) for i in props]

#output
['0.2', '0.3', '0.4']

或者:

props = np.arange(0.2,0.5,0.1)
props = [str(np.around(i, 1)) for i in props]

关于python - 将 Numpy 数组转换为列表会打印出额外的零吗? Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60815594/

相关文章:

python - 通过比较Python中列表元素的值来比较列表

python - <U12 是什么类型?

python - Numpy 托普利茨矩阵

python - 如何在 Python 中绘制多元函数?

Python:根据文件名将文件移动到文件夹

python - 带有嵌套列表的字典 TypeError : string indices must be integers

python - 如何在Eclipse pyDev中创建python发行包

python - Scrapy 分页不起作用

python - 如何高效地执行循环语句进行数据分析?

python - 如何根据列范围将 numpy 数组中的 0 值替换为其他值?