美文网首页
我眼中一个好的Pythoneer应该具备的品质

我眼中一个好的Pythoneer应该具备的品质

作者: andyham | 来源:发表于2019-05-03 00:32 被阅读0次

    作者:tonnie (我的一位学生,早期供职蚂蚁金服) 我做了一些删减。
    原文:https://zhuanlan.zhihu.com/p/33266239

    知道python最常见的解释器有哪些。
    知道python的语法,缩进和符号对应的含义。
    知道python所有关键字的含义和使用。
    知道python中大部分常用的类型(布尔值,字符串类型,数字类型,序列,集合,字典,生成器...)。
    知道如何编写pythonic的代码(上下文管理器,推导表达式,装饰器,切片…)。
    知道如何避免python中的一些坑,如可变的默认参数,闭包的迟绑定。
    知道python中的函数式编程以及map、filter的使用。知道list,tuple,dict,set等的时间复杂度和空间复杂度。
    知道GIL的限制以及与多线程的关系。
    知道python的命名空间查找规则(LEGB)。
    知道python多继承的查找规则(MRO)。
    知道property的含义以及其描述器实现。
    知道python中dict的底层实现,以及与OrderDict的关系。
    知道slots的含义以及使用场景。
    知道如何定义和使用元类,了解其使用场景。
    知道python中的多进程和多线程模型,知道多进程和多线程下间的通信实现。
    知道进程池和线程池在python中对应的库和使用方式。
    知道python中多线程间常用的同步原语的使用方式。
    知道python大多数常用的标准库以及其用途。
    知道python中type和object之间的关系。
    知道深拷贝和浅拷贝在python中的实现方式。
    知道python的调试工具(logging,pdb),知道unittest和doctest的使用。
    知道python中的打包方式(setup.py)。
    知道PEP8常见的范式以及代码格式化方法。
    知道str,bytes和字符串编码的关系以及其相互转换的方法。
    知道python中的几种字符串拼接方式与效率对比。
    知道鸭子类型(duck typing)的含义与其在python中的表现形式。知道函数和方法的区别,知道绑定方法(bound-method)与未绑定方法(unbound-method)的关系。
    知道a = list()和a = []的区别。
    知道dict和set的常见操作,知道set之间集合运算的语法糖。
    知道asyncio的使用方式和使用场景。知道如何用python实现最常用的设计模式。
    知道如何用python做web编程,以及WSGI协议是什么。
    知道如何利用collections,itertools,operator等模块来高效地操作容器对象。
    知道使用python中正则表达式的匹配、查找、切分和替换。
    知道如何使用virtualenv,清楚其用途。知道如何使用pip,以及其与requirements文件的关系。
    知道python中序列化的常用库和接口(json,pickle)。
    知道os和sys库常用的方法,和操作文件和目录的方式。
    知道python中datetime库的常用操作。
    知道普通文件/二进制文件读写的方式。
    知道StringIO和BytesIO的用途。
    知道以单下划线开头、双下划线开头和双下划线包围的变量分别代表着什么含义。
    知道initnew方法在class和type中分别的作用是什么。
    知道dict在类中的含义,以及类属性和方法与dict的关系。
    知道python中生成器的实现以及其使用场景。
    知道python中抽象类的实现方式,以及其抽象基类模块,知道如何用python类实现一个抽象容器类型。
    知道dict和UserDict的关系,以及为什么有UserDict的存在。
    知道普通方法,classmethod和staticmethod的区别。
    知道装饰器中添加functools.wraps的含义与作用。
    知道getattrgetattribute的作用以及其顺序关系。
    知道python中性能测量的方式,如cProfile,tracemalloc。
    知道python中自省的使用方式,知道inspect库的常见用法。知道python中的模块定义,以及导入模块的各种姿势。
    知道python中弱引用的使用方式
    知道python中gc的回收算法方式以及回收规则。
    知道sys.settrace和sys.setprofile在python中的用途和使用方式。
    知道global,local和nonlocal关键字在python中的含义和其使用场景。知道python中==与is的区别。
    知道for-else,try-else的含义和用途。知道.pyc文件的含义,清楚python代码大概的执行过程。
    知道python代码的中文编码处理,以及如何处理乱码。知道_在python解释器中的含义。
    知道python中格式化字符串的方式以及其常见格式语法。
    知道python中常见的魔术方法和其使用方式。
    知道python项目的文件/包的组织方式。

    相关文章

      网友评论

          本文标题:我眼中一个好的Pythoneer应该具备的品质

          本文链接:https://www.haomeiwen.com/subject/ymzonqtx.html