numpy 数组 dtype 在 Windows 10 64 位机器中默认为 int32

numpy array dtype is coming as int32 by default in a windows 10 64 bit machine(numpy 数组 dtype 在 Windows 10 64 位机器中默认为 int32)
本文介绍了numpy 数组 dtype 在 Windows 10 64 位机器中默认为 int32的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我在笔记本电脑上安装了 Anaconda 3 64 位,并在 Spyder 中编写了以下代码:

I have installed Anaconda 3 64 bit on my laptop and written the following code in Spyder:

import numpy.distutils.system_info as sysinfo
import numpy as np
import platform

sysinfo.platform_bits 
platform.architecture()

my_array = np.array([0,1,2,3])
my_array.dtype

这些命令的输出显示如下:

Output of these commands show the following:

sysinfo.platform_bits 
Out[31]: 64

platform.architecture()
Out[32]: ('64bit', 'WindowsPE')

my_array = np.array([0,1,2,3])
my_array.dtype
Out[33]: dtype('int32')

我的问题是,即使我的系统是 64 位的,为什么默认数组类型是 int32 而不是 int64?

My question is that even though my system is 64bit, why by default the array type is int32 instead of int64?

感谢任何帮助.

推荐答案

默认整数类型np.int_是C long:

Default integer type np.int_ is C long:

http://docs.scipy.org/doc/numpy-1.10.1/user/basics.types.html

但是 C long 在 win64 中是 int32.

But C long is int32 in win64.

https://msdn.microsoft.com/en-us/library/9c3yd98k.aspx

这有点奇怪.

这篇关于numpy 数组 dtype 在 Windows 10 64 位机器中默认为 int32的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

python arbitrarily incrementing an iterator inside a loop(python在循环内任意递增迭代器)
Joining a set of ordered-integer yielding Python iterators(加入一组产生 Python 迭代器的有序整数)
Iterating over dictionary items(), values(), keys() in Python 3(在 Python 3 中迭代字典 items()、values()、keys())
What is the Perl version of a Python iterator?(Python 迭代器的 Perl 版本是什么?)
How to create a generator/iterator with the Python C API?(如何使用 Python C API 创建生成器/迭代器?)
Python generator behaviour(Python 生成器行为)