Python 是否可以将numpy int64数组转换为int类型

Python 是否可以将numpy int64数组转换为int类型,python,arrays,numpy,int,Python,Arrays,Numpy,Int,我正在尝试将64位整数的numpy数组转换为标准python整数数组(即int类型的变量) 我天真地认为,np.int64表示64位整数,int表示标准python整数,但这似乎并不正确: 将numpy导入为np a=np.arange(2) 打印(a.dtype)#dtype('int64')) 打印(键入(a[0])# b=a.aType(int) 打印(b.dtype)#dtype('int64') 打印(类型(b[0])# c=a.astype('int') 打印(c.dtype)#dt

我正在尝试将64位整数的numpy数组转换为标准python整数数组(即
int
类型的变量)

我天真地认为,
np.int64
表示64位整数,
int
表示标准python整数,但这似乎并不正确:

将numpy导入为np
a=np.arange(2)
打印(a.dtype)#dtype('int64'))
打印(键入(a[0])#
b=a.aType(int)
打印(b.dtype)#dtype('int64')
打印(类型(b[0])#
c=a.astype('int')
打印(c.dtype)#dtype('int64')
打印(类型(c[0])#
当然,有一件事是有效的:

d = a.tolist()
print(type(d[0]))  # int
有可能有一个numpy数组,其中的数字类型为
int
,或者numpy是否要求变量为其等效的
np.int
数据类型?

这只是一个注释的复述,以结束问题

内置的
int
不是有效的数据类型。它将转换为 无论
np.int
是什么,都可以是
np.int64
np.int32
,具体取决于 在你的平台上。可以,但必须使用dtype=object 本质上删除了numpy的优点,为您提供了一个Python列表


是的,内置的
int
不是有效的数据类型。它将被转换为
np.int
是什么,可能是
np.int64
np.int32
,具体取决于您的平台。您可以使用
对象
,但究竟为什么要这样做呢?Numpy使用自己的数据类型。您可以检查。
我正在尝试将64位整数的numpy数组转换为标准python整数数组
为什么?您的想法是正确的,
int
表示标准python
int
类型。实际上,如果您将
numpy.array
构造函数抛出错误传递给
dtype
参数,您可以提出这样一个参数,但无论出于何种原因,
numpy
的创建者决定“哦,这一定意味着您需要相应的
numpy
dtype”。它确实减少了一些击键次数……您可以使用numpy进行任何计算,并且只将您将在这些其他lib中输入的部分解析为int(使用标准
map(int,array)
或w/e)