python 自查

  1. 在什么时候需要使用OOP?

一般而言 我们称python 为脚本语言
多数脚本类的 直接面向过程 写上多个函数 就可以解决问题
但是 当项目是大型的时候 一定要考虑 代码的复用性

通过合适的代码结构和封装 减少犯错的可能性

在自由度和可读性可维护性之间的一种相对较优的妥协 妥协的目的在于通过规范化的操作和封装 较少团队开发维护的成本 优化开发体验

过度封装的问题 比较常见

OOP

FP 函数式编程关键在于不可变性 只有不可变了 才不用考虑时间

代码应该尽可能使用oop和fp 两种范式 命令式(过程式)的代码是很不友好的

  1. 在什么时候使用类装饰器?
    类装饰器的举例

  2. 你用过元类嘛?

  3. 在什么时候用静态方法什么时候使用类方法?
    方法跟类有关,但在实现时并不需要引用类或者实例,例如,设置环境变量,修改另一个类的变量,等。这个时候,我们可以使用静态方法。

类方法采用装饰器@classmethod来定义

是否与类或者实例进行绑定,这就是实例方法,类方法,静态方法的区别

实例方法,第一个参数必须要默认传实例对象,一般习惯用self。
静态方法,参数没有要求。
类方法,第一个参数必须要默认传类,一般习惯用cls。

  1. 你了解那些管理属性? call , init ,
    __new__都是在什么时候被触发?__getattr__和__getattribute__应用有什么不同?

  2. 你知道标准库里面的多少个模块?你能在需要的时候知道这个功能其实标准库里面已经实现了?

  3. 什么时候用signal?假如你会django你知道django的signal是什么?你了解orm嘛?

  4. asyncore,contextlib, functools, collections, heapq,itertools,
    SocketServer, weakref,operator(知道3个就算)这些你会几个?

  5. python的多态是什么?

  6. 在什么场景可以尝试python的设计模式中的XX(能想到2个场景就算)?

  7. 在什么时候可以使用Mixin?

  8. 在什么时候可以使用python的闭包?

  9. 你曾经用过yield嘛?生成器和迭代器的区别和应用场景是什么?

  10. 在什么可以使用python的函数式编程?

  11. future模块里面都有什么定义的用法?

  12. 什么时候用回调?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值