python 魔法方法 有什么作用_一篇文章带你读懂Python的魔法方法

/1 前言/

魔法方法是python 里面非常重要的一个分支,平时我们写代码或多或少都会接触到他们,而且他们所产生的作用也是非常巨大的,不得不说,尤其是大型企业开发讲究工整性的时候,用好魔法方法就等于掌握了Python的命脉这样说也丝毫不夸大其词。之所以叫魔法方法自然是因为他们足够强大这一点毋庸置疑。

下面我们就来看看基本的魔法方法,给大家和魔法方法一个零距离接触的机会,也就是给小编一个机会,因为你们的支持才是小编的不竭动力,哈哈哈哈。

/2 基本魔法方法/

如下表所示。

看了这么多,大家可能会暂时觉得有点懵,怎么这么多,这些都要记住吗,天哪??心中是否有种顿时无数只cao ni ma 飘过的感觉,噗嗤!!!

有这种感觉很正常,不过小编来跟大家说,这些不需要全部记住,就像Python 中的模块和其中的方法,你也不需要全部都记住,为什么呢?

因为你要想全部记住,没有谁能有这个脑子,人家电脑硬盘还有空间限制了,更何况人脑了,当然,不排除那些逆天的存在哈,你们随意,小编只给大佬鼓鼓掌~

下面,小编就挑其中几个跟大家说说,都是经常用到的,比较具有代表性,你懂得。

/3 常用魔法方法/

/4 案例例举/

1、构造初始化清除魔法方法

运行结果如下图:

可以看出 , init 并不是第一个被调用的方法,第一个被调用的是 new,这个 方法才真正地创建了实例,当这个对象的生命周期结束的时候, del 会被调用。

其实这些创建实例和销毁实例的过程编译器早帮我们做好了,不需要我们再去多此一举。

可以看出new这个魔法方法运行了之后了,init就没他什么事了,可怜的init,但是为什么我们在实际过程中使用最多的却是init呢?

我们都知道编程语言发展至今都比较智能了,像Java,Python等这些面向对象的语言,都能实现自动创建实例的功能。

今天我们说的Python就是其中之一了。所以创建实例功能显得不是那么重要了,于是乎new出现的几率也就小了,那么init是做什么的呢?

它其实就是初始化方法的构造器,大家都知道,一个类写出来是必须要初始化的,不然无法运行,所以可见其重要性。

2、那么我们只需这样就可以了,如图:

这样就正确显示出我们想要的结果了。

3、属性访问魔法方法。此类魔法方法可以定义私有属性然后使用公有的getter和setter,实现了一系列的封装。

运行后的效果如图:

4、自定义序列魔法方法也称容器类魔法方法。此类魔法方法可以让你的类表现的像内建序列类型一样,比如:字典,元祖,列表,字符串等。

运行后的结果,如图:

可以看到他的确实现了如同列表般的部分功能,这就是他的厉害之处。而且可以自定义更多的实用功能,轻松实现功能从而减少不必要的冗余代码。

5、上下文管理器的魔法方法。

1)用魔法方法enter和exit进行重写,可实现上下文管理器。

2)利用上下文管理器模块重写with open 方法。

6、最后一个最常用的就是 repr 和str了,如图:

/5 小结/

1、本文主要介绍了Python中的魔法方法。魔法方法是python 里面非常重要的一个分支,平时我们写代码或多或少都会接触到他们,而且他们所产生的作用也是非常巨大的。

2、想要了解更多Python网络爬虫知识,可以私信小编“资料”免费获取更多爬虫内容

------------------- End -------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值