news 2026/5/13 3:28:47

NumPy Ndarray 对象

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
NumPy Ndarray 对象

NumPy Ndarray 对象

引言

NumPy 是 Python 中最基础且最重要的科学计算库之一。其中,ndarray对象是 NumPy 的核心,它提供了多维数组的数据结构,极大地简化了科学计算中的数组操作。本文将详细介绍 NumPy 的ndarray对象,包括其创建、属性、操作以及在实际应用中的使用方法。

NumPy ndarray 的创建

在 NumPy 中,可以使用多种方式创建ndarray对象。以下是一些常见的方法:

1. 使用数组函数创建

import numpy as np # 创建一个一维数组 array_1d = np.array([1, 2, 3, 4, 5]) # 创建一个二维数组 array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # 创建一个三维数组 array_3d = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])

2. 使用 Python 原生列表创建

import numpy as np # 使用 Python 原生列表创建一维数组 array_1d = np.array([1, 2, 3, 4, 5]) # 使用 Python 原生列表创建二维数组 array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # 使用 Python 原生列表创建三维数组 array_3d = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])

3. 使用函数直接创建

import numpy as np # 使用 zeros 函数创建一个全为零的二维数组 array_zeros = np.zeros((2, 3)) # 使用 ones 函数创建一个全为一的二维数组 array_ones = np.ones((2, 3)) # 使用 full 函数创建一个给定值填充的二维数组 array_full = np.full((2, 3), 7) # 使用 empty 函数创建一个未初始化的二维数组 array_empty = np.empty((2, 3)) # 使用 random 函数创建一个随机值的二维数组 array_random = np.random.random((2, 3)) # 使用 randint 函数创建一个给定范围随机整数的二维数组 array_randint = np.random.randint(1, 10, (2, 3))

NumPy ndarray 的属性

ndarray对象具有多种属性,以下是一些常用的属性:

1. shape

shape属性表示数组的维度和大小。例如:

import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) print(array_2d.shape) # 输出:(2, 3)

2. dtype

dtype属性表示数组中元素的数据类型。例如:

import numpy as np array_int = np.array([1, 2, 3]) print(array_int.dtype) # 输出:int64

3. size

size属性表示数组中元素的总数。例如:

import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) print(array_2d.size) # 输出:6

NumPy ndarray 的操作

NumPyndarray对象支持多种操作,包括数学运算、索引、切片、形状变换等。

1. 数学运算

import numpy as np array_1d = np.array([1, 2, 3, 4, 5]) print(array_1d * 2) # 输出:[ 2 4 6 8 10]

2. 索引与切片

import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) print(array_2d[0, 1]) # 输出:2 print(array_2d[0:2, 1:3]) # 输出:[[2 3] [5 6]]

3. 形状变换

import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) print(array_2d.reshape(3, 1)) # 输出:[[1] [4] [7]]

总结

NumPyndarray对象是 NumPy 库中的核心,提供了多维数组的数据结构,极大地简化了科学计算中的数组操作。本文详细介绍了 NumPyndarray的创建、属性、操作以及在实际应用中的使用方法。掌握 NumPyndarray对象,将有助于提高你的科学计算效率。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/26 17:02:25

AutoGLM-Phone-9B应用案例:电商产品描述生成

AutoGLM-Phone-9B应用案例:电商产品描述生成 随着移动智能设备的普及和AI能力的下沉,如何在资源受限的终端上实现高质量的多模态推理成为关键挑战。AutoGLM-Phone-9B 正是在这一背景下诞生的轻量化、高性能多模态大模型,特别适用于移动端场景…

作者头像 李华
网站建设 2026/5/8 21:55:45

Qwen3-VL弹性使用:高峰时段自动扩容,闲时自动降配

Qwen3-VL弹性使用:高峰时段自动扩容,闲时自动降配 引言 对于电商公司来说,大促期间视频分析需求会突然暴增,但平时又用不了那么多算力资源。这种"潮汐式"的计算需求,如果采用固定资源配置,要么…

作者头像 李华
网站建设 2026/4/23 14:49:02

PDF-Extract-Kit实战:古籍数字化与文字识别项目

PDF-Extract-Kit实战:古籍数字化与文字识别项目 1. 引言:古籍数字化的挑战与PDF-Extract-Kit的价值 1.1 古籍数字化的核心痛点 古籍文献作为中华文明的重要载体,具有极高的历史、文化和学术价值。然而,大量古籍以纸质或扫描图像…

作者头像 李华
网站建设 2026/5/11 13:01:33

jEasyUI 树形菜单添加节点

jEasyUI 树形菜单添加节点 引言 jEasyUI 是一个开源的、基于 jQuery 的前端框架,它提供了丰富的 UI 组件,帮助开发者快速构建响应式、交互式的网页应用。树形菜单是 jEasyUI 中一个常用的组件,它能够以树状结构展示数据,便于用户进…

作者头像 李华
网站建设 2026/5/12 18:30:57

PDF-Extract-Kit企业级部署:构建文档处理流水线

PDF-Extract-Kit企业级部署:构建文档处理流水线 1. 引言:企业级文档智能处理的挑战与机遇 在数字化转型浪潮中,企业每天面临海量PDF文档的处理需求——从科研论文、财务报表到合同协议。传统人工提取方式效率低、成本高,且易出错…

作者头像 李华
网站建设 2026/5/12 7:29:01

如何轻松绕过反爬虫系统:Camoufox反侦测浏览器完全指南

如何轻松绕过反爬虫系统:Camoufox反侦测浏览器完全指南 【免费下载链接】camoufox 🦊 Anti-detect browser 项目地址: https://gitcode.com/gh_mirrors/ca/camoufox 在当今数据驱动的互联网时代,网络爬虫技术面临着前所未有的挑战。随…

作者头像 李华