NumPy中的24种不同类型的标量详解

 更新时间:2026年05月25日 08:52:50   作者:峡谷的小鱼  
本段描述了NumPy中的多种标量类型及其用途,包括布尔、整数、浮点数等复浮点数等Python对象类型等灵活的数据类型,并强调这些类型为数组标量提供了与nd ndarray API兼容的API

在NumPy中,提供了多种新的基本Python类型来描述不同类型的标量。

numpy.generic 是所有 numpy 标量类型的基类,是为了使得数组标量可以和ndarray数组对象保持相同的 API。

一、内置标量类型

numpy 支持的数据类型比 Python 内置的类型要多很多,基本上可以和 C 语言的数据类型对应上,其中部分类型对应为 Python 内置的类型。

下表列举了常用 NumPy 基本类型。

1. NumPy的默认数据类型是float_

Numpy的默认数据类型是float_

2. 布尔(Booleans)

类型备注字符代码
bool_
bool8
布尔型数据类型(True 或者 False),兼容Python bool‘?’

3. 整数(Integers)

类型备注字符代码
byte兼容C char‘b’
short兼容C 短’h’
longlong兼容C 长‘q’
intc与 C 的 int 类型一样,一般是 int32 或 int 64,兼容C int‘i’
int_兼容Python int‘l’
intp用于索引的整数类型(类似于 C 的 ssize_t,一般情况下仍然是 int32 或 int64)‘p’
int8字节 8位
int16整数 16位
int32整数 32位
int64整数 64位

4. 无符号整数(Unsigned integers)

类型备注字符代码
ubyte兼容C 无符号字符‘B’
ushort兼容C 无符号短’H’
ulonglong兼容C 无符号长‘Q’
uintc与 C 的 无符号 int 类型一样,兼容C unsigned int‘I’
uint_兼容Python int‘L’
uintp用于索引的整数类型(类似于 C 的 ssize_t,一般情况下仍然是 int32 或 int64)‘P’
uint8无符号整数 8位
uint16无符号整数 16位
uint32无符号整数 32位
uint64无符号整数 64位

5. 浮点数字(Floating-point numbers)

类型备注字符代码
half‘e’
single兼容: C浮点数’f’
double兼容:C双精度浮点数
float_64位,兼容:Python float‘d’
longfloat兼容:C长浮点数‘g’
float1616位
float3232位
float6464位
float9696位
float128128位

6. 复浮点数(Complex floating-point numbers)

类型备注字符代码
csingle‘F’
complex_兼容:Python复数'D"
clongfloat‘G’
complex64两个32位浮点数
complex128两个64位浮点数
complex192两个96位浮点数
complex256两个128位浮点数

7. Python对象

类型备注字符代码
object_Python对象‘O’

注意:

实际存储在对象数组中的数据( 即 具有dtype的数组object_)是对Python对象的引用,而不是对象本身。因此,对象数组的行为更像普通的Python lists,因为它们的内容不必是相同的Python类型。

对象类型也是特殊的,因为包含object_项的数组 不会object_在项访问时返回对象,而是返回数组项引用的实际对象。

8.灵活的数据类型

类型备注字符代码
bytes兼容:Python字节‘S’
unicode兼容:Python Unicode/str‘U’
void‘V’

这些数据类型没有预定义的大小,在描述数据时可以设定不同的长度。

二、属性方法

数组标量类型的属性和方法对应于数组的属性,实现API的兼容。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python中PyQt5/PySide2的按钮控件使用实例

    Python中PyQt5/PySide2的按钮控件使用实例

    这篇文章主要介绍了PyQt5/PySide2的按钮控件使用实例,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Django通过自定义认证后端实现多种登录方式验证

    Django通过自定义认证后端实现多种登录方式验证

    Django提供了用户认证系统,那么如何在项目中进行应用呢?在本文中小编将给大家介绍如何使用用户认证系统,实现我们业务场景中常见的多种登录方式验证。感兴趣的小伙伴可以了解一下
    2021-12-12
  • 使用Python批量将Word转PDF的实现技巧

    使用Python批量将Word转PDF的实现技巧

    我们在实际工作中很容易发现,有些时候我们需要将Word文档转换为PDF文档,如果只是一个文件,我们也只是需要通过Word提供的转换为PDF文档的功能就可以实现了,那么多个文档如何实现呢,所以本文给大家介绍了Python批量将Word转PDF的实现技巧,需要的朋友可以参考下
    2025-08-08
  • python入门学习关于for else的特殊特性讲解

    python入门学习关于for else的特殊特性讲解

    本文将介绍 Python 中的" for-else"特性,并通过简单的示例说明如何正确使用它,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-11-11
  • python设置表格边框的具体方法

    python设置表格边框的具体方法

    在本篇文章里小编给大家整理的是关于python设置表格边框的具体方法及相关代码,需要的朋友们可以学习参考下。
    2020-07-07
  • Python selenium实现断言3种方法解析

    Python selenium实现断言3种方法解析

    这篇文章主要介绍了Python selenium实现断言3种方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • pytorch hook 钩子函数的用法

    pytorch hook 钩子函数的用法

    这篇文章主要介绍了pytorch hook 钩子函数的用法,Hook 是 PyTorch 中一个十分有用的特性,使用后可以不必改变网络输入输出的结构,方便地获取、改变网络中间层变量的值和梯度,下文详细介绍需要的小伙伴可以参考一下
    2022-03-03
  • python获取命令行输入参数列表的实例代码

    python获取命令行输入参数列表的实例代码

    今天小编就为大家分享一篇python获取命令行输入参数列表的实例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • python中利用numpy.array()实现俩个数值列表的对应相加方法

    python中利用numpy.array()实现俩个数值列表的对应相加方法

    今天小编就为大家分享一篇python中利用numpy.array()实现俩个数值列表的对应相加方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • 使用Python实现屏幕截图功能的详细教程

    使用Python实现屏幕截图功能的详细教程

    Python使用ImageGrab截图主要依赖于Pillow库(PIL库的一个分支),该库提供了ImageGrab模块来实现屏幕截图功能,以下是一个详细的截图教程,需要的朋友可以参考下
    2025-01-01

最新评论