Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么numpy数组将int转换为float_Python_Numpy_Numpy Dtype - Fatal编程技术网

Python 为什么numpy数组将int转换为float

Python 为什么numpy数组将int转换为float,python,numpy,numpy-dtype,Python,Numpy,Numpy Dtype,我试图用整数填充数组,但似乎numpy数组一直在将整数转换为浮点数。为什么会发生这种情况?我如何阻止这种情况 arr = np.empty(9) arr[3] = 7 print(arr[3]) >>>7.0 与Python列表不同,NumPy数组只能包含一个类型(据我所知),它是在创建时设置的。放入数组的所有内容都将转换为该类型 默认情况下,数据类型假定为float。要设置另一种类型,可以将dtype传递给empty函数,如下所示: >>> arr = n

我试图用整数填充数组,但似乎numpy数组一直在将整数转换为浮点数。为什么会发生这种情况?我如何阻止这种情况

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

与Python列表不同,NumPy数组只能包含一个类型(据我所知),它是在创建时设置的。放入数组的所有内容都将转换为该类型

默认情况下,数据类型假定为
float
。要设置另一种类型,可以将
dtype
传递给
empty
函数,如下所示:

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

在分配
arr[3]
之前,您是否检查了
arr
的数据类型?np.empty的默认数据类型为float:@AnkitJaiswal这不是,也从来不是关闭的适当原因。充其量,这是一个拒绝投票的理由,你可以这样做。谢谢,@user2285236,我必须在使用np.empty()时指定数据类型