简单谈谈面向对象初体验

如下内容是业务python 爱好者的一点面向对象初体验,没有太多干货,就当茶余饭后随便看看的个人感受吧!

基于之前一个批处理python脚本的,意识到函数式代码不易维护(主要还是自己没有相关的知识和规范,要不然C也没有类,为什么能开发那么大型的操作系统了?)

python openpyxl处理批量excel 遇到的几个问题记录_shuiqinghan2012的博客-CSDN博客

见如上的总结2,这里填坑。

查了一些视频和资料,了解到面向对象编程相对更易维护,面向对象三大特点,封装,继承和多态,更易维护就是封装和继承,可能对于我们这种很小的脚本就是封装,之前写一个函数需要传递很多参数,用了类,初始化对象时一传递,后面就可以直接调用方法了,传参明显少了,这个优点比较明显,因为当功能稍微复杂一点,用函数式编程就会出现函数里调用函数,内层的函数参数需要外层传递进来,多了就很难理清楚,过一段时间再看就很费劲。

1.初步了解面向对象和面向过程:

这里找到一个B站视频,视频链接如下:

一个经典的例子带你走进Python面向对象思维世界,超级经典的面向对象思维课_哔哩哔哩_bilibili

看完这个视频之后给我的第一个感觉就是面向对象似乎更符合客观事实,更方便造轮子单独操作,自己造自己的轮子就可以,不用考虑其它东西。这也就方便了功能拆解,造轮子的时候好好造轮子,造车的时候就直接拿轮子用。如下两个处理方式的不同。

2.之后就开始找资料学习面向对象 类

python书上的例子比较好理解,但是始终理解不深,可能是我看的不够深,加深理解的主要是以下几点:

1.为什么要创建类,之前理解就是创建了一个模型,比如上个视频中的容器模型,加深理解的是类的好处,可以分类,将相似的函数或者相似功能,相似的数据处理之类的放置到一个类中,这一点很有用,之前理解类就是创建个模型,是造轮子,显示中很多东西都是操作类型的,不容易实体化,比如写一个数据处理的功能的脚本,要实体化什么?不容易想到,但分类就很容易想到,那处理excel数据的写一个excel相关的类,理解了这一点就像攀岩的时候找到了扒手,可以下手了,技术好不好再说,总算可以从思维上进行面向对象了(😂)。

2.self的理解,书上的例子也没有完成讲明白面向对象中为啥要处理self,反正就是照着用,也能出功能,但还是和上面说的函数编程一样,时间就了完全陌生了,这次不是因为乱,而是因为不理解。加深理解的是如下这套视频,我自己白嫖的,因此还是很感激老师免费开放,视频是培训时录制的,后来还练习了老师,把笔记也发我了,自己总结了思维导图,加深理解。

那么说了半天,self到底是啥,是实列化时的那个对象。深深的感谢武沛琪老师。

https://www.bilibili.com/video/BV18E411V7ku?p=14

3.其它的列子的理解

总之就是这个视频让我初入门了面向对象,并对我做的上一个小工具全部做了类处理,明显感觉代码整齐了好多,也方便以后直接修改用做其它类似功能。特别适合业余不常写代码的我。

插句题外话,就是理解了这么点之后,正月初四那天下午我放弃了陪家人出去玩的机会,尽然一个人在家写了两个小时的代码,有时候感概人终究还是被脑子控制着,而不是脑子控制着人,所以要慎重选择进入自己脑子的东西。

如下是改造后的一个类实列的大概框架

因为没有整块时间,都是断断续续完成的,完成一点做下笔记和记录

 从时间上看,从消费者转换成生产者还是有很大距离,总之经常做总结,能坚持一件事往下做还是可以看到些许的成效,希望以后类似重复的统计数据等事请还是让程序帮我干了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值