Created with Sketch.
Created with Sketch.
首页
发现
小书
登录/注册
×
注册小专栏
通过微信登录
通过微博登录
通过Github登录
通过邮箱
注册
、
登录
友情提示
Login FAQ
.
×
邮箱登录
通过微信、微博、Github 登录
登录
×
邮箱注册
通过微信、微博、Github 登录
注册
Python 剖析
作者
satanwoo
文章
34篇
售价
¥ 20
订阅
等共 674 人
马上订阅
icon_gift@2x
Created with Sketch.
送给好友
奖励
你可以在自己的个人网站、微博、朋友圈、微信群等分享本专栏的链接,如果有用户通过你的分享订阅,你将获得该订阅金10%的收入分成。
向大家推荐《Python 剖析》 https://xiaozhuanlan.com/pythonwoo?rel=
复制链接
Created with Sketch.
微信扫码
icon_weibo_01@2x
Created with Sketch.
新浪微博
icon_twitter@2x
Created with Sketch.
Twitter
取消
确定
随着数据挖掘、机器学习、区块链等技术的不断发展,Python在编程语言界的排名和地位也直线上升。加之其可扩展性强、编写上手简单的特点,Python在日常工作中的重要性也逐渐提高。因此,本专栏将从日常使用过程中涉及的知识面开始,逐点深入剖析Python源码,探究包括但不限于如下内容:1. Python 内建对象实现巧妙之处2. Python 运行时3. Python 虚拟机预计总篇幅将在40-50篇左右。会从Python2.7开始,加上最新的Python 3,一网打尽。备注:绝大多数时间维持在一周一篇的节奏,自觉遵守。当然也是借这个平台希望订阅者督促,如果连续两周未提前说明的前提下未更新,全额退款。
最新文章
Group 14
Created with Sketch.
按发布时间正序
satanwoo
番外:从 Reload 谈谈 Python 的 Package / Module 加载与缓存
番外:从 Reload 谈谈 Python 的 Package / Module 加载与缓存 熟悉 Python 的人可能知道,Python 其实本质上还是们解释性的语言,只不过通过在真正解释前会执行下所谓的编译流程,使得纯文本的代码变成了结构化...
satanwoo
Python的Package与Module
Python的Package与Module 在上文《Python中import机制的实现原理》上中,我们没有针对load_next和get_parent展开。本文就从这两个函数展开,引出两个重要的概念:Package和Module。 从lib文件夹说起 了解Python的读者都知...
satanwoo
Python中import机制的实现原理(一)
Python中import机制的实现原理(一) 提起python,不得不提的就是它丰富的生态。不仅有内置的模块,如sys,也有强大的业界扩展,如scikit或者numpy。而这些强大的工具能力,仅仅需要通过import xxx这样简单的...
satanwoo
Python的模块实现机制
Python的模块实现机制 使用过Python的同学相信除了被Python简洁的语法使用方式(比如没有恼人的指针)所吸引之外,选择Python的一大原因就是其强大的苦。从科学计算numpy到服务器搭建django与flask,可谓你想...
satanwoo
番外:Python字节码的复杂示例
番外:Python字节码的复杂示例 上文中我们讲述了Python字节码的构成,本文通过一个具体复杂的例子来串讲整个流程。 >>> def example(a, b): ... for i in range(a, b): ... print i ... 在上述...
satanwoo
Python的字节码
Python的字节码 在上文《Python的编译:从py到pyc》中,我们提到Python实际上会先将你编写的程序编译成平台无关的字节码,今天我们就来深入探讨这个字节码。 字节码种类 以我们当前研究的Python 2.7.x来探讨...
satanwoo
Python的编译:从py到pyc
之前的文章,我们大多数讲了Python文件一步步是如何进行词法分析、文法定义、语法分析以及具体的实现方式。 今天我们来谈谈Python编程中一个一直被人忽略的部分:Pyc Python是不是解释型语言 从定义上...
satanwoo
Python 与 DFA
DFA 在上次我们阐述的《Python的抽象语法树(二)》的文末,我们提及了DFA,这是一个非常庞大的话题,本文会试着用简洁的例子和语句去阐述他和构建语法树之间的关系。 DFA、NFA与正则文法 DFA,全文解释...
satanwoo
Python的抽象语法树(二)
Python的抽象语法树(二) 在之前的Python 的抽象语法树(一),我们阐述了一个字符串表达式是如何按照Python的文法定义生成对应的抽象语法书的。 今天我们就借助一个简单的小例子,来感受下Python生成抽...
satanwoo
番外:一文看懂 PyObject 和 PyTypeObject
之前有读者朋友觉得Python 对象与类有点没看懂。 因此我今天通过PPT画了几幅图,希望能帮助读者朋友们更好的理解相关内容:
satanwoo
Python 的抽象语法树(一)
Python的抽象语法树(一) 之前三章的内容,我们分别谈及了语法分析中涉及到的文法定义、文法分析以及消除左递归等内容。 今天我们来谈谈语法分析的另一大部分内容:抽象语法树。 抽象语法树 简单...
satanwoo
Python语法分析(三)
Python语法分析(三) 上文的最后,我们提到了Python的语法描述里面定义了很多实际编程中无法感知的“中间形式”。今天我们就接着这个问题继续探讨Python的语法分析。 BNF 在研究我们问题之前,我们需要...
satanwoo
番外:PyBaseObject_Type继承流程
番外:PyBaseObject_Type继承流程 本文算是一个番外补充篇 之前有读者朋友反馈在阅读外《Python 对象与类》之后有点迷糊,不知道PyBaseObject_Type是个啥。 同时有认真的读者阅读了CPython中的代码,发现PyInt_Ty...
satanwoo
Python的语法分析(二)
Python的语法分析(二) 上文我们讲述了4种文法的定义和对应的限制,并大致浏览了Python语法的文法定义(如下节选),今天就让我们一起来探究一下,这些文法定义是如何得出的。 atom_expr: ['await'] atom trailer...
satanwoo
Python的语法分析(一)
Python的语法分析(一) 老铁们对不住,最近太忙了,恢复更新了 上次我们分析完了Python的词法分析部分,今天让我们进入下一个大的板块:Python的语法分析。 在进入语法分析前,我们首先要了解清楚...
satanwoo
Python的词法分析三
Python的词法分析三 这篇是最后一篇讲词法分析了,如果再看不懂,就略过吧。 在《Python的词法分析》的文末,我们提及了Python所有词法单元的定义都在token.h里面,限于篇幅,我们来感受下Python中是怎么...
satanwoo
Python 词法分析(二)
Python 词法分析(二) 上周写了初步词法分析生成涉及的数据结构以及对应产生的Token,但是有些同学反馈直接上手有点复杂,因此我决定今天先补充一章节,脱离Python的前提,谈谈词法分析该过程本身。 ...
satanwoo
Python的词法分析
吐槽:出的题目没有大佬做吗?俺很伤心哇 从本周开始我们正式进入Python的编译和解释环节。今天我们先来谈谈Python运行环节前的词法执行环节。 由于这部分开始都比较复杂,我会采用实际的例子来...
satanwoo
本周太忙,《Python剖析》暂停更新一周
如标题,下周恢复正常。
satanwoo
《Python剖析》第一阶段有奖问答
从6月份开始写第一篇《Python剖析》开始,已经坚持了3个月左右了。订阅者也从0到了现在超过300多人。 我希望大家订阅我的专栏是真的有所收获,而不是像买书积灰一样浪费,毕竟再少的钱都来之不易。...
satanwoo
Python中的元组对象
Python中的元组对象 终于即将进入到Python对象的最后一个章节了。我们来谈谈Python中一个比较有意思的对象,元组。 很多编程语言里面都没有默认提供元组的实现,因此我们常常需要利用数组或者结构体甚...
satanwoo
Python字典对象的搜索过程及优化
Python字典对象的搜索过程及优化 上周我们探讨了《Python字典对象的实现》,但是还剩下一个比较重要的环节就是Python字典对象搜索的具体过程未能涉及,今天我们就一起来看看搜索过程及其优化的手段。 ...
satanwoo
Python字典对象的实现
上周我们在探讨PyStringObject的优化的过程中接触到了Python中字典对象的实现,因此我们今天就接着这个话题深入探讨下其的具体实现。 熟悉高级编程语言的同学肯定对字典这个数据结构不陌生,比如C++中...
satanwoo
Python的字符串对象优化
上周我们探讨了Python字符串对象的设计,今天我们继续这个话题,来研究下Python中是如何对字符串对象进行优化的。 Python的Intern机制 在上文我们阐述PyStringObject创建过程的时候,我们删除了部分优化的代...
satanwoo
Python的字符串对象
Python的字符串对象题外话 每当我们学习一门新的编程语言的时候,接触到的第一个范例基本都是输出"hello world"。随着学习的深入,我们也逐步了解了各项语言中字符串类型的使用和特性。看起来只是由一...
satanwoo
Python读者群建立 & 目录
读者群 之前有一些读者希望我建立一个《Python剖析》的群,方便大家后续询问问题,长期交流。 因此我建立了一个读者群,所有入群的朋友们请加我的微信@satanwoo,添加的时候请附上订阅的账号名称,我...
satanwoo
内存分配扩张的一点探索
其实本章内容确切的来说和Python并无实质直接联系,但是在上文我们阐述PyListObject的list_resize操作的时候提高了Python的内存分配增长公式,因此我们接着这个话题继续进行研究。 分摊时间复杂度 在上文PyLis...
satanwoo
Python的数组实现细节
Python的数组实现细节 上文Python 的数组实现,我们探讨了PyListObject的数据结构以及对应的迭代器的一些设计思路。 按照惯例,我们这篇文章会继续深挖PyListObject一些巧妙的设计之处,看看Python作者究竟对...
satanwoo
Python 的数组实现
Python的数组实现 之前我们聊了许多关于Python固定对象,比如PyIntObject,PyFloatObject,这种类型的对象在创建完成之后属于不可变对象(当然引用计数等属性除外)。与之对应的,自然而然就有可变对象,今...
satanwoo
浮点数设计及异常原因
浮点数设计及异常原因 上文我们在谈到PyFloatObject的时候,发现其代码实现中有着许多异常捕捉的逻辑,而在之前PyIntObject中却不曾发现。因此我们今天来深挖下浮点数的设计原理,来分析下为什么需要在...
Created with Sketch.
Created with Sketch.
你确定要将该文章置顶吗
置顶
取消
Created with Sketch.
不能订阅自己的专栏哦,转发到微博、朋友圈和公众号宣传自己的专栏吧。
分享给我的朋友
Created with Sketch.
微博分享
Created with Sketch.
微信扫一扫
top
Created with Sketch.
Created with Sketch.
订阅专栏成功
扫码关注小专栏服务号,专栏有新内容及时通知你