一文详解NumPy简单算术及其他运算的实现

你可以直接在 NumPy 数组之间使用算术运算符 + - * /,但本节讨论了一个扩展,其中我们有函数可以接受任何类似数组的对象,如列表、元组等,并根据条件执行算术运算,文中通过代码示例给大家讲解的非常详细,需要的朋友可以参考下

目录
  • 简单算术
    • 加法
    • 减法
    • 乘法
    • 除法
    • 余数
    • 商和余数
    • 绝对值
  • 最后

    简单算术

    你可以直接在 NumPy 数组之间使用算术运算符 + - * /,但本节讨论了一个扩展,其中我们有函数可以接受任何类似数组的对象,如列表、元组等,并根据条件执行算术运算。

    条件算术:意味着我们可以定义算术运算应该发生的条件。

    所有讨论过的算术函数都接受一个 where 参数,我们可以在其中指定条件。

    加法

    add() 函数对两个数组的内容求和,并将结果返回到一个新数组中。

    示例:将 arr1 中的值加到 arr2 的值中:

    import numpy as np
    
    arr1 = np.array([10, 11, 12, 13, 14, 15])
    arr2 = np.array([20, 21, 22, 23, 24, 25])
    
    newarr = np.add(arr1, arr2)
    
    print(newarr)
    

    上面的示例将返回 [30 32 34 36 38 40],这是 10+2011+2112+22 等的和。

    减法

    subtract() 函数将一个数组中的值减去另一个数组中的值,并将结果返回到一个新数组中。

    示例:从 arr1 中的值中减去 arr2 中的值:

    import numpy as np
    
    arr1 = np.array([10, 20, 30, 40, 50, 60])
    arr2 = np.array([20, 21, 22, 23, 24, 25])
    
    newarr = np.subtract(arr1, arr2)
    
    print(newarr)
    

    上面的示例将返回 [-10 -1 8 17 26 35],这是 10-2020-2130-22 等的结果。

    乘法

    multiply() 函数将一个数组中的值与另一个数组中的值相乘,并将结果返回到一个新数组中。

    示例:将 arr1 中的值与 arr2 中的值相乘:

    import numpy as np
    
    arr1 = np.array([10, 20, 30, 40, 50, 60])
    arr2 = np.array([20, 21, 22, 23, 24, 25])
    
    newarr = np.multiply(arr1, arr2)
    
    print(newarr)
    

    上面的示例将返回 [200 420 660 920 1200 1500],这是 10*2020*2130*22 等的结果。

    除法

    divide() 函数将一个数组中的值除以另一个数组中的值,并将结果返回到一个新数组中。

    示例:将 arr1 中的值除以 arr2 中的值:

    import numpy as np
    
    arr1 = np.array([10, 20, 30, 40, 50, 60])
    arr2 = np.array([3, 5, 10, 8, 2, 33])
    
    newarr = np.divide(arr1, arr2)
    
    print(newarr)
    

    上面的示例将返回 [3.33333333 4. 3. 5. 25. 1.81818182],这是 10/320/530/10 等的结果。

    power() 函数将第一个数组中的值提高到第二个数组中的值的幂,并将结果返回到一个新数组中。

    示例:将 arr1 中的值提高到 arr2 中的值的幂:

    import numpy as np
    
    arr1 = np.array([10, 20, 30, 40, 50, 60])
    arr2 = np.array([3, 5, 6, 8, 2, 33])
    
    newarr = np.power(arr1, arr2)
    
    print(newarr)
    

    上面的示例将返回 [1000 3200000 729000000 6553600000000 2500 0],这是 10^320^530^6 等的结果。

    余数

    mod()remainder() 函数都返回第一个数组中的值与第二个数组中的值对应的余数,并将结果返回到一个新数组中。

    示例:返回余数:

    import numpy as np
    
    arr1 = np.array([10, 20, 30, 40, 50, 60])
    arr2 = np.array([3, 7, 9, 8, 2, 33])
    
    newarr = np.mod(arr1, arr2)
    
    print(newarr)
    

    上面的示例将返回 [1 6 3 0 0 27],这是 10 除以 3 的余数 (10%3)、20 除以 7 的余数 (20%7)、30 除以 9 的余数 (30%9) 等。

    当使用 remainder() 函数时,结果相同:

    示例:返回余数:

    import numpy as np
    
    arr1 = np.array([10, 20, 30, 40, 50, 60])
    arr2 = np.array([3, 7, 9, 8, 2, 33])
    
    newarr = np.remainder(arr1, arr2)
    
    print(newarr)
    

    商和余数

    divmod() 函数返回商和余数。返回值是两个数组,第一个数组包含商,第二个数组包含余数。

    示例:返回商和余数:

    import numpy as np
    
    arr1 = np.array([10, 20, 30, 40, 50, 60])
    arr2 = np.array([3, 7, 9, 8, 2, 33])
    
    newarr = np.divmod(arr1, arr2)
    
    print(newarr)
    

    上面的示例将返回:

    (array([3, 2, 3, 5, 25, 1]), array([1, 6, 3, 0, 0, 27]))
    

    第一个数组表示商,(当你将 10 除以 320 除以 `7

    30除以9` 等时得到的整数值。 第二个数组表示相同除法的余数。

    绝对值

    absolute()abs() 函数都对每个元素进行相同的绝对值操作,但我们应该使用 absolute() 来避免与 Python 的内置 math.abs() 混淆。

    示例:返回商

    和余数:

    import numpy as np
    
    arr = np.array([-1, -2, 1, 2, 3, -4])
    
    newarr = np.absolute(arr)
    
    print(newarr)
    

    上面的示例将返回 [1 2 1 2 3 4]

    最后

    到此这篇关于一文详解NumPy简单算术的实现(加减乘除及其他运算)的文章就介绍到这了,更多相关NumPy简单算术内容请搜索昆居客【www.kunjuke.com】以前的文章或继续浏览下面的相关文章希望大家以后多多支持昆居客【www.kunjuke.com】!

    相关推荐:

    苹果 WWDC26 主题演讲一文汇总:iOS 27 等新系统发布、Siri AI 登场,库克迎来生涯“最后一舞”

    Good morning!又是一年 WWDC,但这应当是咱们最后一次看到蒂姆 · 库克在发布会中发来早安问候了。就在今天(北京时间 6 月 9 日)凌晨 1 点,苹果 WWDC26 全球开发者大会主题演讲如期而至,这是库克作为主讲人的“最后一舞”。苹果此前已经官宣,自今年 9 月 1 日起,库克将出任苹果董事会执行董事长,CEO 的位置由约翰 · 特努斯接任。既然是 WWDC,那重头戏自然是操作系...

    一文读懂天玑700处理器:天玑700最新跑分、参数配置及真实评测

    天玑700在2026年仍适合轻度使用,微信多开、抖音刷屏、导航音乐共存无卡顿且温控良好;中度游戏如《王者荣耀》高清高帧率下15分钟发热明显、偶有掉帧;重度多任务易杀后台,不支持4K视频剪辑。 想快速判断天玑700是否够用,比如买红米Note系列或vivo Y系列新机前心里有底,就得看它在2026年真实环境下的性能表现、发热控制和日常使用反馈,而不是只看纸面参数。 天玑700核心规格与工艺定位 天玑...

    华硕无畏Pro14 2026酷睿版与锐龙版区别在哪?一文看懂【对比】

    选锐龙版性能强但发热高续航短,酷睿版能效优散热好接口全;锐龙AI推理快但生态弱,酷睿开箱即用但NPU算力低;屏幕色准酷睿更佳,接口扩展酷睿明显占优。 你想买华硕无畏Pro14 2026款,但面对酷睿版和锐龙版两个几乎长得一模一样的型号,根本分不清该选哪个——屏幕参数一样、重量厚度差不多、连冰锋Pro散热都写着“双风扇双热管”,可价格差了一千多,实际用起来到底差在哪? 核心性能释放与发热表现 第一步...

    宙斯浏览器如何开启CPU加速_宙斯浏览器提升复杂网页运算速度

    宙斯浏览器卡顿可通过启用多线程JavaScript、禁用V8内存压缩、绕过脚本超时限制及绑定高性能CPU核心解决。具体包括:在zeus://flags中启用webassembly-threads等三项实验功能;禁用v8-memory-compression;开启“允许长时间运行脚本”;将进程优先级设为“高于正常”,并切换系统电源模式为“高性能”,BIOS中关闭SpeedStep/Cool’n’Qu...

    Prompt、Skill、Project、MCP 分不清?一文帮你彻底搞懂!

    ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜ Skills商店来了!5万人在用的10个热门Skills,我帮你试了一遍 一、全文速览图 发现了一个Skills社区市场,安装量最高的skill已经37000+。 二、核心概念 ‍‍‍‍‍‍1. Prompt(提示词) AI 的“基础指令”,沟通的启动信号 大家对于 Prompt 应该并不陌生,...
    · AI · 257373

    Trae对Julia语言的科学计算函数和矩阵运算代码补全准确吗?

    Trae编辑器Julia补全不佳是因未启用LanguageServer.jl或配置错误;应安装官方Julia插件、验证julia路径、用REPL确认函数可用性,或导入LinearAlgebra函数词典实现基础提示。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜ 如果您在使用 Trae 编辑器编写 Julia 代码时发现科学计算函数或矩阵运算...
    · AI · 228097

    别等硬盘崩了才后悔!一文讲透笔记本电脑数据备份的四道防线

    想象一下,你正坐在咖啡馆或办公室里,连续奋战了几个星期的项目方案已经接近尾声。就在你准备按下保存键并合上笔记本电脑的那一刻,意外发生了:可能是服务生不小心翻扣的一杯拿铁,瞬间浸透了键盘缝隙;也可能是屏幕毫无征兆地划过一道蓝屏,随后陷入无尽的黑屏死机;甚至只是你正要出门时,书包拉链意外崩开,笔记本重重地摔在水泥地上,传出清脆的金属碎裂声。 在那个瞬间,你的大脑会经历几秒钟的空白,随后涌入的是巨大的焦...

    怎样加速Python中的矩阵运算_调用Cython封装的C语言函数

    NumPy在超大矩阵或复杂自定义计算时因Python解释器开销和内存拷贝变慢,Cython通过消除Python层调度瓶颈提速;关键三步是:写纯C函数、用cdef extern声明并def封装、cythonize -i编译;需确保数组C连续、避免memoryview误传、控制数据搬运成本。 为什么直接用NumPy还不够快 当矩阵规模超过 10⁴×10⁴,或需频繁执行自定义计算(如逐元素非线性变换 +...
    · Python · 299257