菜单
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

NumPy 数据类型


Python 中的数据类型

默认情况下,Python 具有以下数据类型:

  • 字符串 - 用于表示文本数据,文本用引号括起来。例如:"ABCD"
  • 整数 - 用于表示整数。例如:-1, -2, -3
  • 浮点数 - 用于表示实数。例如:1.2, 42.42
  • 布尔值 - 用于表示 True 或 False。
  • 复数 - 用于表示复数。例如:1.0 + 2.0j, 1.5 + 2.5j

NumPy 中的数据类型

NumPy 包含一些额外的数据类型,并使用单个字符来表示数据类型,例如 i 表示整数,u 表示无符号整数等。

下面是 NumPy 中所有数据类型及其字符表示的列表:

  • i - 整数
  • b - 布尔值
  • u - 无符号整数
  • f - 浮点数
  • c - 复数浮点数
  • m - 时间差
  • M - 日期时间
  • O - 对象
  • S - 字符串
  • U - Unicode 字符串
  • V - 为其他类型保留的固定内存块 ( void )

检查数组的数据类型

NumPy 数组对象有一个名为 dtype 的属性,它返回数组的数据类型。

示例

获取数组对象的数据类型

import numpy as np

arr = np.array([1, 2, 3, 4])

print(arr.dtype)
自己动手试一试 »

示例

获取包含字符串的数组的数据类型

import numpy as np

arr = np.array(['apple', 'banana', 'cherry'])

print(arr.dtype)
自己动手试一试 »


创建具有已定义数据类型的数组

我们使用 array() 函数来创建数组,该函数可以接受一个可选参数:dtype,它允许我们定义数组元素的预期数据类型。

示例

创建字符串数据类型的数组

import numpy as np

arr = np.array([1, 2, 3, 4], dtype='S')

print(arr)
print(arr.dtype)
自己动手试一试 »

对于 i, u, f, SU,我们也可以定义大小。

示例

创建 4 字节整数数据类型的数组

import numpy as np

arr = np.array([1, 2, 3, 4], dtype='i4')

print(arr)
print(arr.dtype)
自己动手试一试 »

如果值无法转换怎么办?

如果提供了无法转换的类型,NumPy 将引发 ValueError。

ValueError: 在 Python 中,当传递给函数的参数类型意外/不正确时,会引发 ValueError。

示例

非整数字符串(如 'a')无法转换为整数(会引发错误)

import numpy as np

arr = np.array(['a', '2', '3'], dtype='i')
自己动手试一试 »

转换现有数组的数据类型

更改现有数组数据类型的最佳方法是使用 astype() 方法创建数组的副本。

astype() 函数创建数组的副本,并允许您将数据类型指定为参数。

数据类型可以使用字符串指定,例如 'f' 表示浮点数,'i' 表示整数等,或者您也可以直接使用数据类型,如 float 表示浮点数,int 表示整数。

示例

使用 'i' 作为参数值,将数据类型从浮点数更改为整数

import numpy as np

arr = np.array([1.1, 2.1, 3.1])

newarr = arr.astype('i')

print(newarr)
print(newarr.dtype)
自己动手试一试 »

示例

使用 int 作为参数值,将数据类型从浮点数更改为整数

import numpy as np

arr = np.array([1.1, 2.1, 3.1])

newarr = arr.astype(int)

print(newarr)
print(newarr.dtype)
自己动手试一试 »

示例

将数据类型从整数转换为布尔值

import numpy as np

arr = np.array([1, 0, 3])

newarr = arr.astype(bool)

print(newarr)
print(newarr.dtype)
自己动手试一试 »


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持