iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python中 @的含义以及基本使用方法
  • 543
分享到

python中 @的含义以及基本使用方法

2024-04-02 19:04:59 543人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录一、表示修饰符。二、表示矩阵乘法。总结一、表示修饰符。 可以在模块或者类的定义层内对函数进行修饰。出现在函数定义的前一行,不允许和函数定义在同一行。 一个修饰符就是一个函数,它将

一、表示修饰符。

可以在模块或者类的定义层内对函数进行修饰。出现在函数定义的前一行,不允许和函数定义在同一行。

一个修饰符就是一个函数,它将被修饰的函数作为参数,并返回修饰后的同名函数或其他可调用的东西(如果返回不是一个可调用的对象那么会报错)。

例1:


def funA(desA):
 print("It's funA")
 
def funB(desB):
 print("It's funB")
 
@funA
def funC():
 print("It's funC")

运行结果:

It's funA

例2:

可以看出,该例子中@test等价于 test(xxx()),但是这种写法你得考虑python代码的执行顺序。


def test(func):
    print("a")
    return func()
    
@test
def xxx():
    print('Hello world!')

运行结果:

a

Hello world!

例3:

为更深刻理解该用法,来个复杂点的嵌套型。


def funA(desA):
 print("It's funA")
 
 print('---')
 print(desA)
 desA()
 print('---')
 
def funB(desB):
 print("It's funB")
 
@funB
@funA
def funC():
 print("It's funC")

运行结果:

It's funA

---

<function funC at 0x00000252D2545550>

It's funC

---

It's funB

解析:

  1. @funB 修饰装饰器@funA,@funA 修饰函数定义def funC(),将funC()作为funA()的参数,再将funA(funC())作为funB()的参数。 执行的时候由上而下,先执行funA(funC()),再执行funB(funA(funC()))。注意,funC()并不执行,除非funA()函数中给出了执行funA()的代码。
  2. 打印desA,其传的是funC()的地址,即desA现在为函数desA()。 执行desA()即执行funC(),desA=desA()=funC()。

二、表示矩阵乘法。

        不常用。

例:


import torch
 
n=100
x = torch.ones(n,2)
x[:,0].unifORM_(-1.,1)  # 第一列变换至(-1.,1) 之间
print(x[:5])  # 输出前5行
a = torch.tensor([3.,2.]) # 一维Tensor
print(a)
print(a.shape)
y = x@a
print(y)
print(y.shape)

输出结果:

tensor([[ 0.8230,  1.0000],

        [ 0.2427,  1.0000],

        [-0.7416,  1.0000],

        [-0.1267,  1.0000],

        [ 0.7767,  1.0000]])

tensor([3., 2.])

torch.Size([2])

tensor([ 4.4691,  2.7281, -0.2249,  1.6198,  4.3302,  3.3386,  1.9908, -0.8602,

         4.9401,  1.9773,  4.5304, -0.1322,  3.9059, -0.6714,  1.8961,  3.7886,

         0.8241,  4.4958,  2.2765,  2.0459,  3.6542,  3.0824,  2.8941,  1.0526,

         4.8735,  1.4954,  3.0208,  4.0778,  2.3491,  2.2261,  3.1072,  1.0640,

         1.7861, -0.8534,  3.2532,  1.5553,  0.2124,  3.6449,  1.6078, -0.1138,

         4.2842,  3.7184,  2.2547,  3.4069,  3.6274,  0.4879,  1.4638,  3.9289,

         3.3475,  4.1895,  1.5572,  0.8312,  2.9297, -0.9266,  0.4067,  2.5237,

         0.6808,  4.9553,  3.3838,  0.5514,  4.8429,  0.0513,  3.4206,  0.3634,

         4.7817,  3.0385,  2.3276, -0.0794,  3.4981,  4.3776, -0.8681, -0.4573,

         3.6906,  1.2463,  1.4817,  4.0007,  4.7871,  2.5638,  4.2755,  3.1731,

         3.4726,  2.1015, -0.8896,  1.4156,  1.2603,  4.0047,  3.3631,  3.5998,

         3.2414, -0.1534,  3.6266,  0.3750,  4.4118, -0.0199,  1.6172,  3.2992,

        -0.2325,  1.8240,  0.5580,  2.1420])

torch.Size([100])

总结

到此这篇关于Python中@的含义以及基本使用方法的文章就介绍到这了,更多相关python中@用法内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python中 @的含义以及基本使用方法

本文链接: https://www.lsjlt.com/news/159702.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python中 @的含义以及基本使用方法
    目录一、表示修饰符。二、表示矩阵乘法。总结一、表示修饰符。 可以在模块或者类的定义层内对函数进行修饰。出现在函数定义的前一行,不允许和函数定义在同一行。 一个修饰符就是一个函数,它将...
    99+
    2022-11-12
  • python中class(object)的含义是什么以及用法
    目录python class(object)的含义class, class()和class(object)的区别为什么要继承object类class, class()和class(o...
    99+
    2023-02-03
    python class python object python class(object)
  • linux cd的含义以及用法
    linux cd是什么意思? linux中cd的意思是change directory即切换目录。 Linux cd命令用于切换当前工作目录至 dirName(目录参数)。 其中 dirName 表示法可为绝对klOzg...
    99+
    2022-06-04
    linux cd
  • 聊聊JavaScript中.?、??、??=的用法以及含义
    目录前言可选链(.)空值合并运算符()空值赋值运算符(=)趣味问答时间:值得注意的是 : 是忽视 null ,undefined 等错误的值最后前言 在项目中我们往往要做很多很多的空...
    99+
    2022-11-13
  • mysql explain中key_len的含义以及计算方法
    目录前言计算key_len注意事项:示例总结前言 在Mysql中执行explain的结果中有一列为key_len,那么key_len的含义是什么呢? key_len:表示索引使用的字...
    99+
    2022-11-13
  • python方差检验的含义及用法
    说明 方差检验是用来比较两个或多个变量数据的样本,以确定它们之间的差异是简单随机的,或者是由于过程之间的显著统计差异造成的。 自变量X是一种离散数据,自变量Y是一种连续数据(x可以是多种类型),如果数据正态分布,方差...
    99+
    2022-06-02
    python 方差检验
  • Python使用plt.boxplot()函数绘制箱图、常用方法以及含义详解
    目录1. 箱图含义2.计算方法3.绘图3.1 绘制单个箱图3.2 绘制多个箱图3.3实战3.3 参数详解3.4 常用方法总结 1. 箱图含义 箱图是一中用于统计数据分布的统...
    99+
    2022-11-11
  • CSS中使用大于号的含义及使用方法
    本篇内容介绍了“CSS中使用大于号的含义及使用方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码如下:...
    99+
    2022-10-19
  • putty以及psftp的基本操作,使用方法等
    1、putty登陆远程服务器 open之后进入登陆界面,输入用户名之后点击Enter,之后输入登陆密码(界面不显示,输入正确后直接Enter就可以)  进入之后的界面 之后就可以输入命令进行操作了 2、文件传输psftp: 运行psft...
    99+
    2023-09-11
    服务器 运维 linux
  • mysql explain中key_len的含义以及计算方法是什么
    这篇文章主要为大家展示了“mysql explain中key_len的含义以及计算方法是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“mysql explain中key_...
    99+
    2023-06-29
  • 异步的含义以及JavaScript异步编程的方法
    本篇内容主要讲解“异步的含义以及JavaScript异步编程的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“异步的含义以及JavaScript异步编程的方法...
    99+
    2022-10-19
  • Python中赋值运算符的含义与使用方法
    目录引言一、赋值运算符含义:二、赋值运算符写法:2.1单个变量赋值2.2多个变量赋值2.3 多变量赋值相同值附:扩展后的赋值运算符总结引言 在Python中但凡提到的赋值运算符其实讲...
    99+
    2022-11-13
  • JavaScript中.?、??、??=的用法及含义是什么
    今天小编给大家分享一下JavaScript中.、、=的用法及含义是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。可选链(...
    99+
    2023-06-29
  • vue中$的含义及用法是什么
    这篇文章主要讲解了“vue中$的含义及用法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vue中$的含义及用法是什么”吧!这些只是Vue的命名规则,为了区分普通变量属性,避免我们自己声...
    99+
    2023-07-06
  • Python中多线程的创建及基本调用方法
    1. 多线程的作用 简而言之,多线程是并行处理相互独立的子任务,从而大幅度提高整个任务的效率。 2. Python中的多线程相关模块和方法 Python中提供几个用于多线程编程的模块,包括thread,th...
    99+
    2022-06-04
    多线程 方法 Python
  • Java 自定义Spring框架以及Spring框架的基本使用
    从现在开始,大家可以跟随着我的脚步来自定义一个属于自己的Spring框架。但是,在学习自定义Spring框架之前,我们得先来回顾一下Spring框架的基本使用。知晓了Spring框架...
    99+
    2022-11-12
  • 详解python中的json的基本使用方法
    在Python中使用json的时候,主要也就是使用json模块,json是以一种良好的格式来进行数据的交互,从而在很多时候,可以使用json数据格式作为程序之间的接口。 #!/usr/bin/env ...
    99+
    2022-06-04
    使用方法 详解 python
  • vue中自定义指令(directive)的基本使用方法
    目录前言正文1.全局注册2.局部注册3.钩子函数及参数设置4.灵活用法(1)动态指令参数(2)函数简写方式(3)对象字面量方式5.使用场景写在最后前言 在vue项目中我们经常使用到 ...
    99+
    2022-11-12
  • JavaScript函数的定义与基本使用方法
    本篇内容介绍了“JavaScript函数的定义与基本使用方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2022-10-19
  • JavaScript函数的定义和基本使用方法
    1.用函数语句定义 先给一个例子,该函数的功能是返回数组元素的和; function sumArray(arr) { var sum = 0; for(var...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作