1. self表示一个类的实例对象本身。如果用了staticmethod就无视这个self了,就将这个方法当成一个普通的函数使用了。

2. cls表是这个类本身。

# 代码为证
class A(object):def func1(self):print("func1:", self)@staticmethoddef func2():print("func2")@classmethoddef func3(cls):print("func3:", cls)a = A()a.func1()  #  最常见的调用方式,但与下面的方式相同#  func1: <__main__.A object at 0x0000014788701EB8>

A.func1(a) #  这里传入实例a,相当于普通方法的self#  func1: <__main__.A object at 0x0000014788701EB8>

A.func2()  # 这里,由于静态方法没有参数,故可以不传东西# func2:

A.func3()  # 这里,由于是类方法,因此,它的第一个参数为类本身。# func3: <class '__main__.A'>print(A)   # 可以看到,直接打印A,与上面那种调用返回同样的信息。# <class '__main__.A'>

3. 更多: 类先调用__new__方法,返回该类的实例对象,这个实例对象就是__init__方法的第一个参数self,即self是__new__的返回值。

转载于:https://www.cnblogs.com/aaronthon/p/9205464.html

python类中的self参数和cls参数相关推荐

  1. python类装饰器详解-Python类中的装饰器在当前类中的声明与调用详解

    我的Python环境:3.7 在Python类里声明一个装饰器,并在这个类里调用这个装饰器. 代码如下: class Test(): xx = False def __init__(self): pa ...

  2. python方法定义..._解析Python类中的方法定义

    最近在学习类过程中,绑定方法这个概念没有理解透彻,所以在网上找了很多相关博客.文章研究到底是怎么一回事.因为有的文章所陈述与我在python3.5版本实际实验中有些出入,所以经过实践后总结出以下结论. ...

  3. python 类中的变量、方法

    一. python 类中的变量分为类变量,实例变量,self # coding:utf-8class A(object):date = '20201215' # 类变量def __init__(sel ...

  4. python 类中定义类_Python中的动态类定义

    python 类中定义类 Here's a neat Python trick you might just find useful one day. Let's look at how you ca ...

  5. 在python中定义类时、运算符重载_自定义 Python 类中的运算符和函数重载(上)...

    如果你对 Python 中的str对象使用过 + 或 * 运算符,你一定注意到了它的操作与 int 或 float 类型的区别: 你可能想知道同一内置运算符或函数如何对不同类对象进行不同操作的.这分别 ...

  6. python类中成员的的调用

    python类中成员的调用 python类中的方法到底到底是方法还是函数取绝于调用者, 当类名调用这个方法时他是一个函数 class Foo(object):def f1(self):print(&q ...

  7. 【转】python类中super()和__init__()的区别

    [转]python类中super()和__init__()的区别 单继承时super()和__init__()实现的功能是类似的 class Base(object):def __init__(sel ...

  8. 用生动的例子花式解释:python类中一定需要有 __init__方法么?没有会怎样?

    python 类中一定需要有 __init __方法么?没有的会怎样? 在回答这个问题之前,先说两个问题: ① 面向对象编程? ② 什么是类? 面向对象,先上一个正式点的解释: "把一组数据 ...

  9. python类中包含一个特殊的变量、它可以访问类的成员_Python 类的特殊成员介绍...

    类的成员有两种形式 公有成员,在任何地方都能访问 私有成员,只有在类的内部才能方法,私有成员命名时,前两个字符是下划线. class Foo: def __init__(self, name, age ...

  10. python类中包含一个特殊的变量、它表示当前对象自身_知到APP教师职场礼仪第七单元章节测试网课答案大学课后答案...

    [判断题]水参与了植物体内众多的生物化学反应. [单选题]所有参加保险的人为自己办理保险而合作成立法人组织的相互保险组织是( ). A. 相互保险公司 B. 相互保险社 C. 保险合作社 D. 保险合 ...

最新文章

  1. 如何在面试中通过工厂模式来给自己加分?逆袭面经分享
  2. 【Linux】处理数据文件
  3. torch中permute()函数用法补充内容(矩阵维度变化详细过程)
  4. Luogu4438[HNOI/AHOI2018] 道路
  5. 用c 语言写21点游戏,求一c语言程序 :21点游戏代码
  6. Ubuntu安装Hbase数据库
  7. 云服务器搭建Hadoop集群
  8. 哈希碰撞,改变世界的原力
  9. IME Starters Try-outs 2018 F - First Day + G - Greatest IME
  10. swagger的基本使用
  11. 结绳计数——最原始的备忘录
  12. 与面试官的一次促膝长谈:人家也是第一次当面试官,你们答不上来我也特别尴尬!
  13. IAR程序下载起始地址以及加入BOOTLOAD
  14. 自动驾驶领域常见英文缩写及其中文含义(不断完善中)
  15. 7-4 平面向量加法 (15 分)---->c语言的深度刨析
  16. 电子护照阅读器|证件阅读机MEPR100+与MEPR100性能分析与差异化对比
  17. 安徽公务员计算机专业科目真题,公务员计算机专业真题+答案安徽省考 安徽省公务员考试...
  18. linux read使用方法,Linux命令: read的使用
  19. 2022年湖北省大学生电子设计竞赛A题(单项交流电子负载)赛后总结
  20. 毫米波雷达人体感应器,智能感知静止存在,人体存在检测应用

热门文章

  1. 微软官方的《Power BI权威指南》译版发售
  2. 《软件开发这点事儿》作者在MSDN上与您讨论软件开发
  3. 【感知机/支持向量机】点到平面距离公式的由来
  4. 有趣的算法(五):一文读懂二叉搜索树的插入、删除
  5. Sublime功能拓展及插件
  6. endnote 参考文献加序号_EndNote同一文章的插入不同编号参考文献的方法 | 科研动力...
  7. 注解定时器_细数那些使用过的定时器
  8. 蓝桥杯2018年第九届C/C++省赛B组第六题-递增三元组
  9. 如何以管理员身份运行电脑
  10. JSP — 项目篇《I》【打印九九乘法表】