介绍

本项目致力于对 Python 3.7 的源码分析,深度参考陈儒大大的《Python 源码剖析》,编写 Python 3 的版本。

希望各位 Python 爱好者能参与其中,一起探索 Python 魔法背后的奥秘!

使用

您可以直接访问 在线版,或者根据以下步骤访问本地版。

前置条件

您的系统上需要安装好 node (会自带npm)。

使用 make 或者使用 npm 命令去构建

使用 make 命令的方式构建:

若您可使用 make 命令,简单执行如下命令进行初始化:

make init

执行如下命令运行服务端:

make run

使用 npm 命令的方式构建:

若您不能使用 make 命令,或想直接使用 npm 命令,执行如下命令进行初始化:

安装项目依赖:

npm install

执行如下命令运行服务端:

npm run serve

访问

Roadmap

大体按照《Python 源码剖析》中的目录结构进行编写。依次介绍 Python 源码基本信息、内建对象和虚拟机。

章节

序章

前言

Python 源代码的组织

Windows 环境下编译 Python

UNIX/Linux 环境下编译 Python

修改 Python 源码

Python 内建对象

Python 对象初探

Python 整数对象

Python 字符串 对象

Python List 对象

Python Dict 对象

Python Set 对象

实现简版 Python

Python 虚拟机

Python 编译结果

Python 虚拟机框架

虚拟机一般表达式

Python 虚拟机控制流

Python 虚拟机函数机制

Python 运行环境初始化

Python 模块加载机制

Python 多线程机制

Python 内存管理机制

python3源码剖析新版_《Python 3 源码剖析》相关推荐

  1. PHP大灌篮投篮游戏源码 微信+手机wap源码 带控制_大灌篮游戏源码

    内含详细安装教程,请严格按照文档来安装,顺序错了也会安装不起来. PHP大灌篮游戏源码,投篮游戏源码,手动提现 后台密码自己替换MD5 [完整源码链接] PHP大灌篮投篮游戏源码微信+手机wap源码带 ...

  2. python字节码执行函数_做一个字节码追踪器,从内部理解 Python 的执行过程

    最近我在研究 Python 的执行模型.我对 Python 内部的东西挺好奇,比如:类似 YIELDVALUE 和 YIELDFROM 此类操作码的实现:列表表达式.生成器表达式以及一些有趣的Pyth ...

  3. outlook qr码在哪里_原平防伪溯源码_橙程(北京)科技有限公司

    首页 > 新闻中心 发布时间:2020-10-28 00:17:07 导读:橙程(北京)科技有限公司为您提供原平防伪溯源码的相关知识与详情: 在一个对象的一个代码系统给每个产品的标识.康佳集团, ...

  4. wcdma码片速率_转载 WCDMA中码片速率、符号速率、bit速率 WCDMA常用概念

    比特(Bit),符号(Symbol) ,码片(Chip) 经过信源编码的含有信息的数据称为"比特" 经过信道编码和交织后的数据称为"符号" 经过最终扩频得到的数 ...

  5. python项目源码 日程管理_[Python] Python日程处理

    日程处理 目标是输入个文本文件关于日程的,就能够到时间的时候显示出来,在ubuntu系统上运行. 包括以下几点: 1.了解Tkinter. 1.1 参考文献自己制作Python IDEL 1.1.1 ...

  6. 基于C语言的学生信息管理系统_(更新版)_(附源码和安装包)_课程设计_☆*往事随風*☆的博客

    学生信息管理系统 一.需求 基于C语言编写一个学生信息管理系统来实现对学生成绩的管理(数学.C语言.英语),系统要能够实现基本的增.删.改.查等功能,在此基础上还可以自由发挥,要求使用到数组.文件.排 ...

  7. AI面相测试源码 AI面相手相大师小程序源码 最新版微信小程序源码

    它可以通过你上传的正脸照或者是清晰的照片,先进行智能扫描而后通过云计算,智能分析,进行少量列的数据整理,而后传送给你一份非常清晰明了的面相情况总结,详细具体到各个器官参数,而后反馈出少量问题,给你少量 ...

  8. 家教源码php,新版PHP家教网源码 整站PHP家教网站 搭建家教网

    商品属性 品牌其他 语言PHP 数据库Mysql 移动端无 大小50 MB 规格无 授权无 源文件无 安装环境 安装服务¥49.00(额外,可选)[要求说明] 主机类型虚拟主机(仅有FTP管理) ...

  9. python钉钉扫码登录程序_钉钉扫码登录网站(两种方式实现)

    钉钉扫码登录网站(两种方式实现) 效果: 动手敲代码! 第一步,钉钉后台配置 点击进入钉钉开发者平台 的页面,点击左侧菜单的[移动接入应用-登录],然后点击右上角的[创建扫码登录应用授权],创建用于免 ...

最新文章

  1. Java 成员变量与局部变量
  2. vector 和 list 的区别,应用
  3. 《Two Dozen Short Lessons in Haskell》学习(十六)- Definitions with Alternatives
  4. 佳能2900打印机与win10不兼容_佳能RF 1.4、RF 2增倍镜与RF 100500mm L IS USM并不完全兼容...
  5. win7宽带已连接但是有感叹号无法上网的解决方法
  6. 《高性能路由器 设计与实现》高性能路由器新型体系结构 小记
  7. 内容推荐策略产品经理的方法和实践
  8. python爬取个人信息_Python爬取个人支付宝朋友信息操作示例
  9. VC2008配置设置(转)
  10. 花生壳+FileZilla搭建公网FTP服务器
  11. php jquery alert 美化,jquery插件hiAlert实现网页对话框美化_jquery
  12. 计算机专业论文周进展300字,论文周进展怎么写(论文周进展情况记录8篇
  13. 从Netty基础到聊天系统和RPC实战-卷二
  14. Android音视频开发:MediaRecorder录制音频
  15. android property实现路径
  16. HTML设置网站标题前的logo
  17. 单片机_第2章 MCS-51单片机的结构及原理
  18. 程序验证(五):一阶理论的过程
  19. 88是python语言的整数类型_Python学习系列之数据类型(三)
  20. Oracle IMP-00003: 遇到 ORACLE 错误 20001,导数据出现问题

热门文章

  1. linux 触摸屏驱动中断下半部实现-工作队列
  2. 2022年5种最适合黑客的编程语言
  3. 生活中最毁身体的坏姿势(转载)
  4. QIIME 2 2019.7 更新
  5. 『Python学习笔记』Python实现并发编程(补充joblibpymysql)
  6. C语言编译cc,c语言编译过程及cc 的使用
  7. [转载]明华 IC卡应用 C#
  8. matlab stem 函数使用方法
  9. 【DL】时间序列的深度学习
  10. 银河麒麟和鸿蒙系统,国产银河麒麟操作系统V10发布 兼容300万APP厉害了