python中np.multiply()、np.dot()和星号(*)三种乘法运算的区别详解

 更新时间:2021年03月21日 11:13:38   作者:o_Eagle_o  
这篇文章主要介绍了python中np.multiply()、np.dot()和星号(*)三种乘法运算的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

为了区分三种乘法运算的规则,具体分析如下:

import numpy as np

1. np.multiply()函数

函数作用

数组和矩阵对应位置相乘,输出与相乘数组/矩阵的大小一致

1.1数组场景

A = np.arange(1,5).reshape(2,2)
A

array([[1, 2],
       [3, 4]])

B = np.arange(0,4).reshape(2,2)
B

array([[0, 1],
       [2, 3]])

np.multiply(A,B)  #数组对应元素位置相乘

array([[ 0,  2],
       [ 6, 12]])

1.2 矩阵场景

np.multiply(np.mat(A),np.mat(B))  #矩阵对应元素位置相乘,利用np.mat()将数组转换为矩阵

matrix([[ 0,  2],
        [ 6, 12]])

np.sum(np.multiply(np.mat(A),np.mat(B))) #输出为标量

20

2. np.dot()函数

函数作用

对于秩为1的数组,执行对应位置相乘,然后再相加;

对于秩不为1的二维数组,执行矩阵乘法运算;超过二维的可以参考numpy库介绍。

2.1 数组场景

2.1.1 数组秩不为1的场景

A = np.arange(1,5).reshape(2,2)
A

array([[1, 2],
       [3, 4]])

B = np.arange(0,4).reshape(2,2)
B

array([[0, 1],
       [2, 3]])

np.dot(A,B) #对数组执行矩阵相乘运算

array([[ 4,  7],
       [ 8, 15]])

2.1.2 数组秩为1的场景

C = np.arange(1,4)
C

array([1, 2, 3])

D = np.arange(0,3)
D

array([0, 1, 2])

np.dot(C,D) #对应位置相乘,再求和

8

2.2 矩阵场景

np.dot(np.mat(A),np.mat(B)) #执行矩阵乘法运算

matrix([[ 4,  7],
        [ 8, 15]])

3. 星号(*)乘法运算

作用

对数组执行对应位置相乘

对矩阵执行矩阵乘法运算

3.1 数组场景

A = np.arange(1,5).reshape(2,2)
A

array([[1, 2],
       [3, 4]])

B = np.arange(0,4).reshape(2,2)
B

array([[0, 1],
       [2, 3]])

A*B #对应位置点乘

array([[ 0,  2],
       [ 6, 12]])

3.2矩阵场景

(np.mat(A))*(np.mat(B)) #执行矩阵运算

matrix([[ 4,  7],
        [ 8, 15]])

到此这篇关于python中np.multiply()、np.dot()和星号(*)三种乘法运算的区别详解的文章就介绍到这了,更多相关python np.multiply()、np.dot()和星号内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python机器学习库sklearn(scikit-learn)的基础知识和高级用法

    Python机器学习库sklearn(scikit-learn)的基础知识和高级用法

    Scikit-Learn是 Python 最流行的机器学习库之一,它提供了各种工具来实现、评估和探索各种学习算法,用于,各种机器学习任务,在本教程中,我们将介绍 Scikit-Learn 的基础知识和一些高级用法,并提供一些实例代码来帮助我们更好地理解
    2023-07-07
  • 使用Python制作一个翻译器

    使用Python制作一个翻译器

    这篇文章主要为大家详细介绍了如何使用Python实现一个中英翻译器,输入中文或者英文,输出对应的英文或者中文,有需要的小伙伴可以参考一下
    2025-02-02
  • python如何使用base加密解密

    python如何使用base加密解密

    base编码是一种加密解密措施,目前常用的有base16、base32和base64,以base64为例,base64加密后共有64中字符,本文给大家分享python使用base加密解密的相关知识,感兴趣的朋友跟随小编一起看看吧
    2024-05-05
  • Python查找两个有序列表中位数的方法【基于归并算法】

    Python查找两个有序列表中位数的方法【基于归并算法】

    这篇文章主要介绍了Python查找两个有序列表中位数的方法,结合实例形式分析了Python基于归并算法遍历、计算有序列表相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • Python XML RPC服务器端和客户端实例

    Python XML RPC服务器端和客户端实例

    这篇文章主要介绍了Python XML RPC服务器端和客户端实例,本文给出了实现代码以及运行效果,需要的朋友可以参考下
    2014-11-11
  • Python内置函数——__import__ 的使用方法

    Python内置函数——__import__ 的使用方法

    本篇文章主要介绍了Python内置函数——__import__ 的使用方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • Python报表自动化之从数据到可视化一站式指南

    Python报表自动化之从数据到可视化一站式指南

    在现代数据驱动的世界中,生成清晰、有用的报表对于业务决策至关重要,Python作为一门强大的编程语言,提供了丰富的库和工具,使得报表自动化变得轻而易举,本文将详细介绍如何利用Python从数据处理到可视化,实现报表自动化的全过程
    2024-01-01
  • 浅析Python3爬虫登录模拟

    浅析Python3爬虫登录模拟

    本篇文章通过学习python爬虫相关知识点来分析Python3爬虫登录模拟的原理以及相关代码分析,对此有兴趣的朋友参考下。
    2018-02-02
  • Python嵌入C/C++进行开发详解

    Python嵌入C/C++进行开发详解

    在本篇文章里小编给大家分享了关于Python嵌入C/C++进行开发的相关知识点内容,有兴趣的朋友们可以参考下。
    2020-06-06
  • Python用scipy生成特殊矩阵

    Python用scipy生成特殊矩阵

    本文主要介绍了Pytho用scipy生成特殊矩阵详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们可以参考一下
    2023-04-04

最新评论