python @classmethod 和 @staticmethod区别,以及类中方法参数cls和self的区别
一、@classmethod 和 @staticmethod
1、staticmethod
作用:让类中的方法变成一个普通函数(普通函数没有绑定在任何一个特定的类或者实例上。所以与不需要对象实例化就可以直接调用)
特点:既可以使用类直接调用,也可以类的实例调用,并且没有任何隐含参数的传入,所以不需要self(参数名是随便定的)。
>>> class C(object):
... @staticmethod
... def add(a,b):
... return a+b
... def get_weight(self):
... return self.add(1,2)
...
>>> C.add
<function add at 0x1d32668>
>>> C().add
<function add at 0x1d32668>
>>> C.get_weight
<unbound method C.get_weight>
2、classmethod
二、类中方法参数cls和self的区别
python @classmethod 和 @staticmethod区别,以及类中方法参数cls和self的区别相关推荐
- python定义类()中写object和不写的区别
python定义类()中写object和不写的区别 这里需要说明一下: python3中,类定义默认继承object,所以写不写没有区别 但在python2中,并不是这样 所以此内容是针对python ...
- 探究Java File类中list()、listFiles()的使用及区别,认识和使用匿名内部类
转载自 探究Java File类中list().listFiles()的使用及区别,认识和使用匿名内部类 内容概要: 1.认识File类: 2.File的构造函数: 3.list()及其重载方 ...
- python 函数参数self_Python类中self参数用法详解
Python编写类的时候,每个函数参数第一个参数都是self,一开始我不管它到底是干嘛的,只知道必须要写上.后来对Python渐渐熟悉了一点,再回头看self的概念,似乎有点弄明白了. 首先明确的是s ...
- python中同一个类中方法之间的变量怎么调用
class A:A = "你好"def test_a(self):self.m = "hello" #实例变量def test_b(self):self.tes ...
- 传智播客python笔记_python传智播客笔记--第十天:隐藏属性,私有属性,私有方法,__del__方法,类的继承,类中方法的重写...
封装,继承,多态 隐藏属性,私有属性,私有方法,__del__方法,类的继承,类中方法的重写 -**************************************************** ...
- 继承(四):new方法都与基类中方法无关
using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace Inher ...
- (36)System Verilog类中方法示例
(36)System Verilog类中方法示例 1.1 目录 1)目录 2)FPGA简介 3)System Verilog简介 4)System Verilog类中方法示例 5)结语 1.2 FPG ...
- Struts2中XXX.Action类中方法的访问(三种方式)
第一种:使用action标签的method属性(常规方法) Action类: package cn.tedu.web;import org.springframework.context.annota ...
- Matcher类中方法简介说明
转自: Matcher类中方法简介说明 Matcher类中索引方法 索引方法的功能: 提供了索引信息, 返回匹配字符串的位置信息 索引方法如下所示: 编号 方法及备注说明 1 public int s ...
最新文章
- Android笔记-网络篇:网络状态
- Java自动装箱与拆箱及其陷阱
- windows组件向导里没有internet 信息服务(iis) 的解决办法
- composer不成功的原因
- #define va_arg(AP, TYPE)
- uva 10594(最小费用最大流)
- m1芯片Mac安装Apple版TensorFlow(conda-forge)+编译安装sklearn
- 驯龙大师稳了!iQOO Neo6游戏实测:两款手游均接近满帧
- springboot2.0版本后配置拦截器会导致静态资源被拦截
- Nature 子刊重磅:腾讯与钟南山团队发布新冠危重症 AI 预测模型 Cox
- sandy学习笔记:Sprite2D 对象
- 计算机中的颜色VI——从色相值到纯色的快速计算
- 函数的参数,参数为数组
- 2台电脑一根网线传文件_安卓端和Mac快速连接传文件
- 阿里云原生专家复礼:多活容灾建设思路与经验分享
- 送给你,PBA商业分析指南(全书下载)
- Spring Boot集成微信扫码登录(实测通过)
- 2017年12月HCNP考试易错题汇总
- windows多网卡叠加网速
- 学习笔记——Exploiting Unintended Feature Leakage in Collaborative Learning(协作学习中的非预期特征泄露研究)
热门文章
- Xamarin Android 所见即所得问题
- Spring学习(七)bean装配详解之 【通过注解装配 Bean】【自动装配的歧义解决】...
- vue路由跳转 返回上一级 this.$router.go(-1) 和返回到指定页面this.$router.push('/home')...
- Linux系统swappiness参数在内存与交换分区之间优化作用
- 无监督学习典例:聚类
- 使用AFNetworking 报错提示
- Android中的ContentValues用法
- 安装 archlinux 之使用 EFI/GPT
- 纪录备忘:应用中的脚本应用
- mac 下配置连接Linux服务器方法,上传下载文件操作