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 相关文章推荐
pygame学习笔记(2):画点的三种方法和动画实例
Apr 15 Python
python对html代码进行escape编码的方法
May 04 Python
Python 关于反射和类的特殊成员方法
Sep 14 Python
python使用TensorFlow进行图像处理的方法
Feb 28 Python
Python图像的增强处理操作示例【基于ImageEnhance类】
Jan 03 Python
Django 缓存配置Redis使用详解
Jul 23 Python
使用selenium和pyquery爬取京东商品列表过程解析
Aug 15 Python
django写用户登录判定并跳转制定页面的实例
Aug 21 Python
学Python 3的理由和必要性
Nov 19 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
Sep 21 Python
详解selenium + chromedriver 被反爬的解决方法
Oct 28 Python
一小时学会TensorFlow2之基本操作2实例代码
Sep 04 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
php下删除字符串中HTML标签的函数
2008/08/27 PHP
关于PHP的相似度计算函数:levenshtein的使用介绍
2013/04/15 PHP
PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法
2014/05/10 PHP
PHP中feof()函数实例测试
2014/08/23 PHP
php从完整文件路径中分离文件目录和文件名的方法
2015/03/13 PHP
正确的PHP匹配UTF-8中文的正则表达式
2015/05/13 PHP
PHP中SSO Cookie登录分析和实现
2015/11/06 PHP
php-msf源码详解
2017/12/25 PHP
动态加载iframe
2006/06/16 Javascript
JavaScript聚焦于第一个字段的代码
2010/10/15 Javascript
使用text方法获取Html元素文本信息示例
2014/09/01 Javascript
JavaScript设计模式之原型模式(Object.create与prototype)介绍
2014/12/28 Javascript
js显示文本框提示文字的方法
2015/05/07 Javascript
javascript操作cookie
2017/01/17 Javascript
谈谈VUE种methods watch和compute的区别和联系
2017/08/01 Javascript
谈谈对vue响应式数据更新的误解
2017/08/01 Javascript
JavaScript 数组去重并统计重复元素出现的次数实例
2017/12/14 Javascript
详解小程序输入框闪烁及重影BUG解决方案
2018/08/31 Javascript
python实现2048小游戏
2015/03/30 Python
python入门教程 python入门神图一张
2018/03/05 Python
详解django2中关于时间处理策略
2019/03/06 Python
python实现各种插值法(数值分析)
2019/07/30 Python
python多任务之协程的使用详解
2019/08/26 Python
Python3如何对urllib和urllib2进行重构
2019/11/25 Python
基于Django signals 信号作用及用法详解
2020/03/28 Python
python redis存入字典序列化存储教程
2020/07/16 Python
python爬虫利用代理池更换IP的方法步骤
2021/02/21 Python
CSS3中的5个有趣的新技术
2009/04/02 HTML / CSS
韩国家庭购物网上商店:Nsmall
2017/05/07 全球购物
New Balance澳大利亚官网:运动鞋和健身服装
2019/02/23 全球购物
写好自荐信的技巧
2013/11/08 职场文书
教学实习自我评价
2014/01/28 职场文书
村党支部换届选举方案
2014/05/02 职场文书
保密工作目标责任书
2014/07/28 职场文书
滞留工资返还协议书
2014/10/19 职场文书
干部培训工作总结2015
2015/05/25 职场文书