Python中对numpy库的学习(四)二元函数运算、广播以及自定义ufunc函数

本文详细介绍了Python中numpy库的二元函数,包括算术和布尔运算,深入探讨了广播机制,如单个数字与数组、多维数组间的广播运算,并讲解了如何自定义ufunc函数,实现对数组元素的高效处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、二元函数

概念:二元函数是参数为两个数组的函数,包括算数运算和布尔运算。

1、算术运算

以下代码为两个形状相同的函数进行运算(布尔运算也是),运算规则是对应位置进行四则运算。

import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print(a+b)      # [5 7 9]
print(a-b)      # [-3 -3 -3]
print(a*b)      # [ 4 10 18]
print(b/a)      # [4.  2.5 2. ]
print(b//a)     # [4 2 2] 整除
print(b % a)    # [0 1 0] 取余

2、布尔运算

布尔运算是指根据使用">","<","<=",">=",“==”,"!="等逻辑运算比较两个数组,并返回布尔型数组

a = np.array([1, 2, 3])
b = np.array([1, 5, 2])
print(a < b)    # [False  True False]
print(a == b)   # [ True False False]

二、广播

当数组形状不同时,低维的数组与高维数组进行运算时,会自动扩展对齐高维数组进行运算。这种从低维向高维自动扩展被称为广播。

1、最常见的广播方式

一个数组+一个数字


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值