V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
AlohaV2
V2EX  ›  Python

《 Python 源码剖析》一书有续作么?

  •  
  •   AlohaV2 · 2020-11-26 11:18:46 +08:00 · 5736 次点击
    这是一个创建于 1460 天前的主题,其中的信息可能已经有所发展或是发生改变。
    是一本很好的书,但是里面是 Python 2.x 的剖析,想知道有没有类似的剖析 Py 3.x 的书籍。先谢谢啦
    26 条回复    2021-01-17 19:48:04 +08:00
    Jammar
        1
    Jammar  
       2020-11-26 11:23:35 +08:00
    流畅的 python
    janxin
        2
    janxin  
       2020-11-26 11:51:48 +08:00
    多次延期的作者现在已经失踪啦~
    paddistone
        3
    paddistone  
       2020-11-26 12:24:39 +08:00
    自己看源码吧,3.x 版本有的章节更新了,比如取消 PyIntObject 对象这些,整体脉络是保持一致的,抽象更统一,优化点和功能也增加了一些,比如某些对象的回收问题,编译指令集也更新了。去官网下载一份 python 源码,目录都没怎么变
    fasionchan
        4
    fasionchan  
       2020-11-26 12:38:31 +08:00   ❤️ 6
    不嫌弃的话,可以看看我写的专栏《 Python 3 源码剖析》: https://www.imooc.com/read/76
    专栏以 Python3.7 源码为准,分为 7 大模块展开:

    - 对象模型
    - 内建对象
    - 虚拟机
    - 函数机制
    - 类机制
    - 生成器与协程
    - 内存管理机制

    考虑到 C 源码太过隐晦,我绘制了大量的底层结构示意图,应该更易读一点。我公众号上有几个样章,可以试读:

    为什么要钻研 Python 源码: https://mp.weixin.qq.com/s/3T59Li0W116T-xDRHwjeFg
    小菜成长之路,警惕沦为 API 调用侠: https://mp.weixin.qq.com/s/S_daJB8ZDUp4lSVVhlS0Dw
    Python 对象模型概述: https://mp.weixin.qq.com/s/jFYMprMoD0fLQ9qLxd2SyQ
    揭开 Python 对象的神秘面纱: https://mp.weixin.qq.com/s/yIhVXKM2TbY2zKRtFtURyw
    str 对象,统一的 Unicode 字符串: https://mp.weixin.qq.com/s/E7z2yN8V9ac2pUTfgqDg9Q
    GIL,束缚 Python 的紧箍圈: https://mp.weixin.qq.com/s/lIkcTuCX5htQcteklCFaZw
    手把手教你设计协程库: https://mp.weixin.qq.com/s/MaLMf3HZCYfmzxOY1QfPnw
    内存池技术如何优化分配效率: https://mp.weixin.qq.com/s/SRd6r1URibR3ZSulT1GDug

    专栏是付费的,请试读觉得合适再买哈,不要冲动消费,哈哈~
    因能力有限,我不敢说写得多好,用心而已。
    有什么建议或者感兴趣的话题,也可以向我提哈,我后续会抽空完善。
    dream4ever
        5
    dream4ever  
       2020-11-26 13:05:41 +08:00
    @fasionchan 看了样章里的第二篇,很有意思,赞一个
    TypeError
        6
    TypeError  
       2020-11-26 13:20:04 +08:00 via Android   ❤️ 1
    https://leanpub.com/insidethepythonvirtualmachine/read
    推荐这本 inside the Python virtual machine
    so1n
        7
    so1n  
       2020-11-26 13:23:14 +08:00 via Android   ❤️ 1
    听说圣诞节就有了
    laike9m
        8
    laike9m  
       2020-11-26 13:25:20 +08:00
    说一本我自己买了的:《 CPython Internals 》,基于 Python 3.9 的源码、底层分析。
    https://realpython.com/products/cpython-internals-book/

    然后楼上推荐的 Inside the Python virtual machine,免费
    laike9m
        9
    laike9m  
       2020-11-26 13:26:11 +08:00
    @janxin #2 再等等,圣诞节快到了🐶
    laike9m
        10
    laike9m  
       2020-11-26 13:27:40 +08:00
    @fasionchan #4 不知道你的教程讲没讲异常处理,这块在 3.7 之后变得还挺多的
    fasionchan
        11
    fasionchan  
       2020-11-26 13:30:24 +08:00
    @laike9m 异常处理目前还没有涉及,我回头看看
    zouzou0208
        12
    zouzou0208  
       2020-11-26 13:38:50 +08:00
    我看过一部分这个 repo 还不错。
    https://github.com/zpoint/CPython-Internals

    另外: pythontutor 做过一个系列 但是是 2.7 的也挺好的。
    &list=PLzV58Zm8FuBL6OAv1Yu6AwXZrnsFbbR0S&ab_channel=PhilipGuo
    anaf
        13
    anaf  
       2020-11-26 14:20:05 +08:00
    深藏大佬
    ruanimal
        14
    ruanimal  
       2020-11-26 14:34:11 +08:00
    @janxin 他几年前就说更新,估计已经胎死腹中了
    mw717if
        15
    mw717if  
       2020-11-26 15:33:56 +08:00
    别等了 作者已经转战 golang 了
    liudongqiang92
        16
    liudongqiang92  
       2020-11-26 16:01:16 +08:00   ❤️ 1
    @fasionchan 我买了这个专栏,非常不错,赞
    zhuangzhuang1988
        17
    zhuangzhuang1988  
       2020-11-26 21:19:49 +08:00
    简单不是高效的方法
    直接 visualstudio2019 编译, 下断点 动态调试看
    quzard
        18
    quzard  
       2020-11-26 23:36:37 +08:00 via Android   ❤️ 1
    @fasionchan 入了入了。年前虽然看了大半本流畅的 Python,但 2 年没碰 Python 又记得零零碎碎。再温习一下
    hxysnail
        19
    hxysnail  
       2020-11-27 09:06:00 +08:00
    @fasionchan 看了你发的样章,写得确实不错,图画得超棒!赞赞赞!
    world1
        20
    world1  
       2020-12-11 20:17:53 +08:00 via Android
    @laike9m 这本书必须得用 dollar 吗
    world1
        21
    world1  
       2020-12-13 22:53:33 +08:00 via Android
    @laike9m 大佬,这本书我买不到,有偿求分享,可以私聊我吗
    laike9m
        22
    laike9m  
       2020-12-19 07:46:32 +08:00
    最近发现 Python 核心开发者 Victor 有一个系列文章,可以看看:
    https://tenthousandmeters.com/tag/python-behind-the-scenes/
    world1
        23
    world1  
       2020-12-20 23:29:27 +08:00 via Android
    @laike9m 这个系列确实不错,没人看陈儒的那本《 python 源码剖析》吗
    laike9m
        24
    laike9m  
       2020-12-21 09:13:02 +08:00 via Android
    @world1 主要是版本有点老了,虽然大体上没变,不过还是建议先看基于新版本的文章和书
    world1
        25
    world1  
       2020-12-21 20:10:40 +08:00 via Android
    对的,他那本基于 python2.5 的,变化老大了,python3 应该只剩下 float 是定长对象了吧(包括基于 float 的虚数),int 现在都是变长对象。上面列过的我都大致看过,除了那本 cpython internals,只看过样章。一般渠道还买不到,头疼
    @laike9m
    AlohaV2
        26
    AlohaV2  
    OP
       2021-01-17 19:48:04 +08:00
    @fasionchan 这本我每周读一点,现在吭哧吭哧基本上读完了。书写的挺好的,深入浅出,亮点是配图。个人博客里也推荐了,我觉得是值这个价的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2328 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:11 · PVG 00:11 · LAX 08:11 · JFK 11:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.