python 中的@运算符使用


Posted in Python onMay 26, 2021

在看fastai的代码时,看到这么一段:

n=100
x = torch.ones(n,2) 
x[:,0].uniform_(-1.,1)
x[:5]
a = tensor(3.,2)
y = x@a + torch.rand(n)

这里面有个@符号不知道是啥意思?

于是百度搜了一下,都是说@xxx是注解或者装饰器,明显不是这段代码的场景嘛!

于是又Google了一下,原来这个@是Python 3.5之后加入的矩阵乘法运算符,终于明白了!

补充:python矩阵乘积运算(multiply/maumul/*/@)解析

在训练数据时经常涉及到矩阵运算,有段时间没有练习过了,手便生疏了。

今天重新测了一把,python中各类矩阵运算举例如下,可以清楚的看到tf.matmul(A,C)=np.dot(A,C)= A@C都属于叉乘,而tf.multiply(A,C)= A*C=A∙C属于点乘。

python 中的@运算符使用

Python测试编码如下:

import tensorflow as tf
import numpy as np

a = np.array([[1,2],[3,4]])
b = np.array([5,6])
c = np.array([[5,6],[7,8]])
print('a:'+'\n',a)
print('b:'+'\n',b)
print('c:'+'\n',c)
#叉乘
d1=a@c
d2=tf.matmul(a,c)
d3=np.dot(a,c)
#点乘
f1=a*c
f2=tf.multiply(a,c)

with tf.compat.v1.Session() as sess:
    print('d1:叉乘a@c' + '\n', d1)
    print('d2:叉乘matmul(a,c)' + '\n', sess.run(d2))
    print('d3:叉乘dot(a,c)' + '\n', d3)
    print('f1:点乘a*c' + '\n', f1)
    print('f2:点乘multiply(a,c)' + '\n', sess.run(f2))

测试结果如下:

python 中的@运算符使用

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现的金山快盘的签到程序
Jan 17 Python
Python中转换角度为弧度的radians()方法
May 18 Python
Python基于更相减损术实现求解最大公约数的方法
Apr 04 Python
python使用循环打印所有三位数水仙花数的实例
Nov 13 Python
django数据关系一对多、多对多模型、自关联的建立
Jul 24 Python
Python学习笔记之For循环用法详解
Aug 14 Python
python关于变量名的基础知识点
Mar 03 Python
python转化excel数字日期为标准日期操作
Jul 14 Python
python 如何利用argparse解析命令行参数
Sep 11 Python
JupyterNotebook 输出窗口的显示效果调整实现
Sep 22 Python
Pycharm 解决自动格式化冲突的设置操作
Jan 15 Python
Python中OpenCV实现查找轮廓的实例
Jun 08 Python
Python 实现定积分与二重定积分的操作
May 26 #Python
python 解决微分方程的操作(数值解法)
python 实现体质指数BMI计算
May 26 #Python
Python 如何解决稀疏矩阵运算
Python selenium模拟网页点击爬虫交管12123违章数据
python scipy 稀疏矩阵的使用说明
python中os.path.join()函数实例用法
May 26 #Python
You might like
人族 TERRAN 概述
2020/03/14 星际争霸
PHP 函数学习简单小结
2010/07/08 PHP
php实现的CSS更新类实例
2014/09/22 PHP
JavaScript 核心参考教程 内置对象
2009/10/13 Javascript
jquery下为Event handler传递动态参数的代码
2011/01/06 Javascript
纯JS实现的批量图片预览加载功能
2011/08/14 Javascript
仿新浪微博返回顶部的jquery实现代码
2012/10/01 Javascript
jQuery中wrapInner()方法用法实例
2015/01/16 Javascript
jQuery实现带分组数据的Table表头排序实例分析
2015/11/24 Javascript
js实现倒计时及时间对象
2016/11/15 Javascript
原生js实现键盘控制div移动且解决停顿问题
2016/12/05 Javascript
js实现的简练高效拖拽功能示例
2016/12/21 Javascript
利用ES6语法重构React组件详解
2017/03/02 Javascript
微信分享调用jssdk实例
2017/06/08 Javascript
jQuery阻止事件冒泡实例分析
2018/07/03 jQuery
基于Vue+element-ui 的Table二次封装的实现
2018/07/20 Javascript
Vue.js结合bootstrap前端实现分页和排序效果
2018/12/29 Javascript
vue2.0 实现富文本编辑器功能
2019/05/26 Javascript
vue实现滑动切换效果(仅在手机模式下可用)
2020/06/29 Javascript
详解详解Python中writelines()方法的使用
2015/05/25 Python
Python编程实现双链表,栈,队列及二叉树的方法示例
2017/11/01 Python
Django框架模板注入操作示例【变量传递到模板】
2018/12/19 Python
Pycharm小白级简单使用教程
2020/01/08 Python
Python 整行读取文本方法并去掉readlines换行\n操作
2020/09/03 Python
Django前后端分离csrf token获取方式
2020/12/25 Python
详解python日志输出使用配置文件格式
2021/02/10 Python
Shell脚本如何向终端输出信息
2014/04/25 面试题
党员组织关系介绍信
2014/02/13 职场文书
安全生产管理责任书
2014/04/16 职场文书
做一个有道德的人演讲稿
2014/05/14 职场文书
工商局副局长个人对照检查材料
2014/09/25 职场文书
小石潭记导游词
2015/02/03 职场文书
2015教师个人工作总结范文
2015/03/31 职场文书
雾霾停课通知
2015/04/24 职场文书
单身证明格式样本
2015/06/15 职场文书
遗嘱格式范本
2015/08/07 职场文书