Why do numpy array turns int into float

吃可爱长大的小学妹 提交于 2021-02-02 10:00:25

问题


I'm trying to fill an array with integers, but it seems like numpy array keep turning the integers into floats. Why is this happening and how do I stop this?

arr = np.empty(9)
arr[3] = 7
print(arr[3])
>>>7.0

回答1:


NumPy arrays, unlike Python lists, can contain only a single type, which (as far as I know) is set at creation time. Everything you put into the array gets converted to that type.

By default, the data type is assumed to be float. To set another type, you can pass dtype to the empty function like this:

>>> arr = np.empty(9, dtype=int)
>>> arr[3] = 7
>>> arr[3]
7


来源:https://stackoverflow.com/questions/51607607/why-do-numpy-array-turns-int-into-float

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!