python 中的魔法方法记录(个人笔记)

1 :__init__(self, *args):初始化对象属性

~ __init__方法是Python类中的一个无法绕开的方法。它相当于面向对象方法中的 C++ 构造函数。

~ 当你创建一个类的新对象时,Python 会自动将你的参数传递给 __init__方法并调用它来初始化对象的属性。

~ __init__方法让类初始化对象的属性,没有其他作用,它只在类中使用

~ 即使在类中没有定义__init__,它也会在创建对象时自动调用一个无参的__init__,也就是说,你在类中定义的init也就是init方法的重写,并且不能再调用无参的init了

2 :__repr__()方法:显示属性


程序运行结果为:

通常情况下,直接输出某个实例化对象,本意往往是想了解该对象的基本信息,例如该对象有哪些属性,它们的值各是多少等等。但默认情况下,我们得到的信息只会是“类名+object at+内存地址”,对我们了解该实例化对象帮助不大。

那么,有没有可能自定义输出实例化对象时的信息呢?答案是肯定,通过重写类的 __repr__() 方法即可。事实上,当我们输出某个实例化对象时,其调用的就是该对象的 __repr__() 方法,输出的是该方法的返回值。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 0. 我到家了,约起来啊~ 魔法方法总是被双下划线包围,例如__init__,它总是会在特定的时候被自动调用。 1...
    单嘉伟xx阅读 3,989评论 0 0
  • 有很多人说学习Python基础之后不知道干什么,不管你是从w3c还是从廖雪峰的教程学习的,这些教程都有一个特点:只...
    程序员爽爽阅读 8,884评论 0 4
  • 在python中,有一些内置好的特定的方法,这些方法在进行特定的操作时会自动被调用,称之为魔法方法,下面介绍几种常...
    LittlePy阅读 22,157评论 5 32
  • 魔法属性 对于一个类,python定义了许多可用的魔法属性,有些每个类都默认存在,有些需要用户手动定义。 __di...
    樱井咲夜阅读 3,017评论 0 0
  • 1、什么叫魔法方法? 魔法方法:Python解释器自动给出默认的,是可以给你的类增加魔力的特殊方法。如果你的对象实...
    Bling_ll阅读 4,773评论 0 2

友情链接更多精彩内容