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
Allonsy
V2EX  ›  Python

Python 进阶疑惑

  •  
  •   Allonsy · 2023-03-21 03:47:32 +08:00 · 5167 次点击
    这是一个创建于 618 天前的主题,其中的信息可能已经有所发展或是发生改变。

    写 Python 写了好几年了, 是时候学习一下进阶的知识了.

    主要是想学习 Python 一些很高级的写法, 以及 Cpython 的解析.

    求推荐书籍

    感谢🙏

    30 条回复    2023-03-28 15:59:57 +08:00
    dayeye2006199
        1
    dayeye2006199  
       2023-03-21 06:26:48 +08:00 via Android
    Fluent Python
    enrolls
        2
    enrolls  
       2023-03-21 08:40:31 +08:00 via iPhone
    Chatgpt 吧。我用它再理解了一遍 async
    sayakafs
        3
    sayakafs  
       2023-03-21 08:43:04 +08:00
    fluent python 强推,据说最新第二版中文四月出
    sikariba
        4
    sikariba  
       2023-03-21 09:17:09 +08:00
    fluent python+1
    JieGaLee
        5
    JieGaLee  
       2023-03-21 09:21:20 +08:00
    Fluent Python + 2
    cocomiko
        6
    cocomiko  
       2023-03-21 09:31:40 +08:00
    @sayakafs 现在不是已经第二版了吗
    cocomiko
        7
    cocomiko  
       2023-03-21 09:33:06 +08:00
    @sayakafs 看了下原来是影印版
    apake
        8
    apake  
       2023-03-21 09:37:05 +08:00 via Android
    fluent python
    Allonsy
        9
    Allonsy  
    OP
       2023-03-21 09:39:19 +08:00
    Fluent Python 有涉及 Cpython 吗 求问.
    Drahcir
        10
    Drahcir  
       2023-03-21 09:41:40 +08:00
    @Allonsy 有一本书叫 CPython Internals ,算是比较新的详解 Python 解析器的资料。
    echoless
        11
    echoless  
       2023-03-21 09:52:50 +08:00
    @enrolls #2 不是很懂的地方 不怕它讲错么
    CaptainD
        12
    CaptainD  
       2023-03-21 09:54:02 +08:00
    流畅的 python 在我看来更像是菜谱类书籍,有高级用法的实例,但是貌似没有涉及源码和解释器相关的内容?推荐一本陈儒写的 python 源码分析,是一本十多年前的书了,基于 python2 写的,有些高级功能自然是没有,但是非常深入,并不过时
    noparking188
        13
    noparking188  
       2023-03-21 10:03:03 +08:00
    以前看过一本入门的讲怎么实现 Python 虚拟机(解释器?)的,差不多忘光了,现在觉得是不是直接看 SCIP 更好,Python 用到哪学哪,找个库直接嗖嗖嗖干活,看看库的源码
    matrix1010
        14
    matrix1010  
       2023-03-21 10:14:14 +08:00   ❤️ 1
    由于看不到 github 所以不知道你现在的水平。结合 Python 的发展趋势我觉得可以从 3 个方面提升:
    CRUD 水平: 熟练掌握 单元测试 /AsyncIO/Typing
    Python 开源项目: 熟悉 PyO3 ,使用 PyO3 编写高性能 Python 库
    Python 核心优化: 学习 Cinder/Pyston ,我觉得 Pyhton 下一步的大动作估计就是集成 JIT
    craiiz
        15
    craiiz  
       2023-03-21 10:16:50 +08:00
    Fluent Python + 3
    Allonsy
        16
    Allonsy  
    OP
       2023-03-21 10:31:16 +08:00
    @matrix1010 我是比较倾向于学习核心优化的. 个人原因并不想放 GitHub. 我 Python 水平还是不错的, CRUD 什么都做过. 你可以讲讲你说的第三个 Path 有什么资料么? 感谢.
    matrix1010
        17
    matrix1010  
       2023-03-21 10:34:31 +08:00
    @Allonsy 没什么特定的资料,最好的办法是直接看代码 /文档。Cinder/Pyston 都是开源的
    lolizeppelin
        18
    lolizeppelin  
       2023-03-21 11:14:04 +08:00
    硬吃 openstack
    iOCZ
        19
    iOCZ  
       2023-03-21 11:22:39 +08:00
    Cpython 我记得中文有一本老书。。。其实研究下操作系统层面也行
    Alias4ck
        20
    Alias4ck  
       2023-03-21 14:14:54 +08:00
    1. python 要高级的写法 这两本书 fluent python 和 python cookbook 都介绍的比较详细
    2. 学习 cpython 直接看源码不就好了吗 ( https://github.com/python/cpython) 前提是你要有 c 的基础
    FarmerChillax
        21
    FarmerChillax  
       2023-03-21 16:40:35 +08:00
    1. 流畅的 Python (Fluent Python)
    2. Python CookBook
    3. High Performance Python
    argsno
        22
    argsno  
       2023-03-21 16:46:00 +08:00
    以下是我为您推荐的 Python 进阶书籍:

    Fluent Python: Clear, Concise, and Effective Programming by Luciano Ramalho
    这本书深入讲解了 Python 的高级特性和最佳实践,包括装饰器、生成器、元编程、异步编程等等。

    Python Cookbook by David Beazley and Brian K. Jones
    这本书是 Python 编程问题的实践指南,涵盖了许多高级主题,例如迭代器和生成器、元编程、并行编程等等。

    Effective Python: 59 Specific Ways to Write Better Python by Brett Slatkin
    这本书提供了一些 Python 编程的最佳实践,包括用 Pythonic 的方式编写代码、如何使用 Python 标准库、如何处理异常和错误等等。

    Python Programming: An Introduction to Computer Science by John Zelle
    这本书是一本面向初学者的 Python 入门教材,但也涵盖了一些高级主题,例如递归、数据结构、算法等等。

    Python 源码剖析 by 李松峰
    这本书介绍了 CPython 的内部实现,包括解释器、对象模型、内存管理、垃圾回收器等等。读完这本书后,你将对 Python 的底层原理有更深入的理解。

    希望这些书籍能够帮助您进一步深入学习 Python 。
    Allonsy
        23
    Allonsy  
    OP
       2023-03-21 16:47:40 +08:00
    @argsno 你这回复很像 chatgpt generate 的😂
    jones2000
        24
    jones2000  
       2023-03-21 17:56:37 +08:00
    直接转 c++/c,py 最后的终极还是用 c++/c 写库提供给py调用,提交效率。
    winglight2016
        25
    winglight2016  
       2023-03-21 18:05:57 +08:00
    虽然不知道学 cpython 有什么用,不过建议看英文版的网站和文章就可以了。

    特别是,一般所谓进阶,应该是代码性能更好,效率更高,可读性更好,更易维护,与其看整本书,不如看专题文章。
    homolabby
        26
    homolabby  
       2023-03-21 21:00:28 +08:00 via Android
    我觉得[ python 工匠]里面的一些思想不错但是看了看楼上的推荐,相比之下可能这本书里面的一些内容比较浅薄
    lucays
        27
    lucays  
       2023-03-21 22:05:52 +08:00
    除了 fluent python 这些老生常谈的
    纯中文有一本 Python3 学习笔记 还不错,但只出了上。
    https://book.douban.com/subject/28509425/
    ryomahan
        28
    ryomahan  
       2023-03-24 09:03:11 +08:00
    读书的话我也推荐 fluent python ,有能力读原版,我读中文版有些地方还是会很拗口。

    时间多的话建议把 python 官方文档过一遍,官方文档写的很不错(至少某些章节),而且中文翻译团队也翻译的七七八八了。

    CPython 的话直接看就行了,我学 asyncio 的时候感兴趣去翻了一下,如果是粗略的浏览的话直接看应该没什么大问题。不过这种底层代码如果你本身对 Python 的特性不熟悉的话你都串不起来,所以不如先把 Python 搞明白了。在你没到不得不了解 CPython 之前不如把时间放在了解 Python 自身的特性和计算机基础上(计算机网络,计算机组成原理,数据结构与算法,设计模式等等)。
    ykb8121
        29
    ykb8121  
       2023-03-24 14:49:11 +08:00
    同上+1
    1. Fluent Python
    2. High Performance Python
    3. Python CookBook
    yinmin
        30
    yinmin  
       2023-03-28 15:59:57 +08:00
    Effective Python: 编写高质量 Python 代码的 90 个有效方法(第二版)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3474 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 11:00 · PVG 19:00 · LAX 03:00 · JFK 06:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.