首先形式上的区别,实例方法隐含的参数为类实例self,而类方法隐含的参数为类本身cls。 静态方法无隐含参数,主要为了类实例也可以直接调用静态方法。

  所以逻辑上,类方法被类调用,实例方法被实例调用,静态方法两者都能调用。主要区别在于参数传递上的区别,实例方法悄悄传递的是self引用作为参数,而类方法悄悄传递的是cls引用作为参数。

接下来看用类和实例分别能否调用类属性

故  实例方法(普通方法)应该由实例调用,类不能调用;

类方法可以由类调用,而且因为传入了参数cls,故也可以由实例来调用。

静态方法两者都能调用

总结成一张表就是:

注意类实例方法调用的结果和静态方法调用的结果的区别:

实例方法(普通方法)——————————————————————随着实例属性的改变而改变

类方法(无论是类调用还是实例调用)———————————————都是类属性的值,不随实例属性的变化而变化

静态方法————————————————————————————不可以访问类属性,故直接输出传入方法的值

转载于:https://www.cnblogs.com/jayliu/p/9030725.html

一文详解python的类方法,普通方法和静态方法相关推荐

  1. [转载] python字符串_一文详解Python字符串条件判断方法

    参考链接: Python字符串| isdecimal 作者 | 张小吉 来源 | 鸡仔说(ID:jizaishuo) 前言 人喜欢为自己的错误,找各种借口开脱.本周做算法题leetcode<39 ...

  2. 一文数学数模-相关性分析(二)斯皮尔曼相关(spearman)相关性分析一文详解+python实例代码

    前言 相关性分析算是很多算法以及建模的基础知识之一了,十分经典.关于许多特征关联关系以及相关趋势都可以利用相关性分析计算表达.其中常见的相关性系数就有三种:person相关系数,spearman相关系 ...

  3. 「软件测试4」一文详解四大典型的白盒测试方法

    软件测试--详解白盒测试基本概念,四种白盒测试方法 这是我参与更文挑战的第3天,活动详情查看:更文挑战 在上一篇文章中,我们讲到了黑盒测试.黑盒测试相较于白盒测试来说比较简单,不需要了解程序内部的代码 ...

  4. python括号详解,Python如何省略括号方法详解

    Python如何省略括号方法详解 在Python语言中最常见的括号有三种,分别是:小括号().中括号[].花括号{}:其作用也不相同,分别用来代表不同的Python基本内置数据类型. 1.Python ...

  5. 一文详解python中的数据库操作

    python中的数据库操作 一.数据库编程接口 1. 连接对象 二.使用内置的SQLite 1.创建数据库文件 2.操作SQLite 三.MySql数据库的使用 3.1 安装MySql 3.2 设置环 ...

  6. 一文数学数模-相关性分析(三)皮尔逊相关性分析一文详解+python实例代码

    目录 前言 一.数值类型 二.皮尔逊系数使用场景 二.皮尔逊相关系数(Pearson correlation) 1.定义 <

  7. 一文速学数模-时序预测模型(一)灰色预测一文详解+Python实例代码

    目录 前言 一.模型理论 特点 二.模型场景 1.预测种类 2.适用条件

  8. 一文详解超参数调优方法

    ©PaperWeekly 原创 · 作者|王东伟 单位|Cubiz 研究方向|深度学习 本文介绍超参数(hyperparameter)的调优方法. 神经网络模型的参数可以分为两类: 模型参数,在训练中 ...

  9. 一文速学数模-时序预测模型(四)二次指数平滑法和三次指数平滑法详解+Python代码实现

    目录 前言 二次指数平滑法(Holt's linear trend method) 1.定义 2.公式 二次指数平滑值: 二次指数平滑数学模型: 3.案例实现 三次指数平滑法(Holt-Winters ...

  10. python定义类方法用来计算整数的减法运算_详解python的二元算术运算,为什么说减法只是语法糖?...

    原标题:详解python的二元算术运算,为什么说减法只是语法糖? 原题 | Unravelling binary arithmetic operations in Python 作者 | Brett ...

最新文章

  1. iOS边练边学--CALayer,非根层隐式动画,钟表练习
  2. kali linux获取root,kali linux 安装keybase 并使用root来运行keybase
  3. 4月22日(牛马不对嘴)
  4. python笔试知识点_python知识点及面试面试大集合
  5. Spring Boot——RabbitMQ
  6. 老师:你根本不知道我有多想逃课
  7. 【7005】二叉树的遍历问题2
  8. SpringBoot与SpringCloud版本对应信息
  9. SSH集成项目,使用注解方式,竟然还有这样的问题!!
  10. 虚拟机里CDlinux 里的水滴 minidwep-gtk
  11. 冒泡、选择和插入排序图解详细分析
  12. 深度学习之卷积神经网络中常用模型评估指标(混淆矩阵,精确率,召回率,特异度计算方法)——python代码
  13. MuJoCo的机器人建模
  14. #467 – 使用UniformGrid 均分行和列(Use a UniformGrid for Evenly Spaced Rows and Columns)
  15. 系统管理、系统安全命令
  16. PingCAP 完成 D 轮 2.7 亿美元融资,创造全球数据库历史新的里程碑
  17. Android ios 表单提交,如何在iOS上模拟HTTP表单(POST)提交
  18. js判断苹果ios各类机型
  19. 理财就是理生活 —— 小白理财训练营(上)
  20. 【BLE】BLE扫描参数

热门文章

  1. ASP.NET版本不是1.1, 2.0的也一样
  2. GARFIELD@01-04-2005
  3. NER | 命名实体识别在QQ音乐上的应用
  4. 综述 | 注意力机制
  5. 机器学习算法难学吗?一文带你掌握机器学习知识要点
  6. 【图神经网络】 漫谈图神经网络 (一)
  7. 【论文解读】EMNLP2019-多粒度自注意力机制
  8. 【ERNIE】深度剖析知识增强语义表示模型——ERNIE
  9. TreeLSTM Sentiment Classification
  10. 资源 | 邓力、刘洋等合著的这本NLP经典书籍之情感分析中文版