Python 进阶疑惑

2023-03-21 03:47:32 +08:00
 Allonsy

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

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

求推荐书籍

感谢🙏

5217 次点击
所在节点    Python
30 条回复
FarmerChillax
2023-03-21 16:40:35 +08:00
1. 流畅的 Python (Fluent Python)
2. Python CookBook
3. High Performance Python
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
2023-03-21 16:47:40 +08:00
@argsno 你这回复很像 chatgpt generate 的😂
jones2000
2023-03-21 17:56:37 +08:00
直接转 c++/c,py 最后的终极还是用 c++/c 写库提供给py调用,提交效率。
winglight2016
2023-03-21 18:05:57 +08:00
虽然不知道学 cpython 有什么用,不过建议看英文版的网站和文章就可以了。

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

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

CPython 的话直接看就行了,我学 asyncio 的时候感兴趣去翻了一下,如果是粗略的浏览的话直接看应该没什么大问题。不过这种底层代码如果你本身对 Python 的特性不熟悉的话你都串不起来,所以不如先把 Python 搞明白了。在你没到不得不了解 CPython 之前不如把时间放在了解 Python 自身的特性和计算机基础上(计算机网络,计算机组成原理,数据结构与算法,设计模式等等)。
ykb8121
2023-03-24 14:49:11 +08:00
同上+1
1. Fluent Python
2. High Performance Python
3. Python CookBook
yinmin
2023-03-28 15:59:57 +08:00
Effective Python: 编写高质量 Python 代码的 90 个有效方法(第二版)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/925719

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX