彻底弄懂Python标准库源码(零)—— 学习计划

作者: 杰克小麻雀
原文链接: https://blog.csdn.net/yushuaigee/article/details/106329590

之前看到一张图,把各种编程语言比作不同的工具,非常形象生动。这里把Python比作电锯,简单粗暴,威力巨大,用起来得心应手。

20200525220244606.png

这张图片说明了编程语言只是一种工具,我们要善于根据不同的实际情况选择趁手的工具。但是作为一个Coder,要想达到更高的水平,不仅要把工具用起来得心应手,还要明白工具背后设计的原理。这样我们才能够深入地学习这些编程语言作者们的思想,先不说自己是否能成长为大神,至少可以更好地理解和使用这些编程语言吧。本着“知其然,还要知其所以然”的态度,我决定系统地学习一下Python的源码。

我暂且把学习计划分为三步:第一步,学习Python标准库源码,也就是Python自带模块中那些用纯Python实现的部分,源码文件在Lib目录下,参考这个官方标准库文档。第二步,学习Python内置模块源码和内置类型的实现源码,也就是Python自带模块中那些用C语言实现的部分,源码文件在Modules和Objects目录目录下,参考这个官方模块索引。第三步,学习Python解释器的实现源码,源码文件在Python目录下。

本次研究的是CPython的源码,使用当前最新版本Python3.8.3,源码在这里下载。考虑到自己的水平和时间,如果还没完成我的学习计划,Python就已经发布了新版本,那就换新版本研究吧,反正也不会有太大的区别,总之要紧跟时代潮流,hh。

彻底弄懂Python标准库源码》系列作为学习计划的第一部分,首先要明确学习目的和学习目标:通过阅读分析标准库的Python代码,学习Pythonic的风格和习惯,同时熟悉常用库的常用API (有需要的时候不用再百度),并了解一些不常用库的作用(有需要的时候能想到)。

学习Python源码这个计划几个月前就在想了,奈何拖延症发作,希望这个博客系列以后可以做到每月更新一篇!

 

Python 源代码主要目录结构

  • Grammar。EBNF描述的语法规则在这个目录下。
  • Include。整个解释器所有的头文件放在这个目录下。
  • Lib。纯Python实现的标准库。
  • Modules。C实现的标准库。
  • Objects。所有的内置类型的实现。
  • Python。Python虚拟机的核心代码。  

参考链接:

  1. Python内置模块与标准库 - impluse 

2. Python源码寻宝记——地图篇 — 0xFEE1C001

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2020-2021 杰克小麻雀
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信