在学习Python的旅程中你是否正在“绝望的沙漠”里徘徊?
学完基础教程的你,是否还在为选择什么学习资料犹豫不决,不知从何入手,提高自己?
今天给小伙伴们分享的这份Python进阶手册:
- 专为想达到职业程序员水平的人而写内容翔实细致,深入浅出;
- 详细阐述容易混淆的Python术语、常见的Python陷阱以及如何避免潜在的bug;
- 讲解分析有关Python的“奇特之处”让你深入理解Python的工作原理;
- 逐步可视化代码执行过程,展现规范,整洁的Python风格代码;
- 通过益智游戏呈现代码底层逻辑让你像职业程序员一样使用Python。
限于文章篇幅原因,只能以截图的形式展示出来,有需要的小伙伴可以 点击这里获取!
第一部分 起步
第1章 处理错误和寻求帮助
第1章介绍如何有效发问和独立查找答案,也将教你如何阅读错误提示信息以及在网上寻求帮助的礼仪。
第2章 环境设置和命令行
第2章讲解如何使用命令行跳转,以及如何配置开发环境和PATH环境变量。
第二部分 最佳实践、工具和技巧
第3章 使用Black进行代码格式化
第3章讲解PEP 8风格指南以及如何格式化代码以提升可读性。你将学习如何使用Black代码格式化工具将这个过程自动化。
第4章 选择易懂的名称
第4章讲解如何命名变量和函数以提升代码的可读性。
第5章 揪出代码的坏味道
第5章列举几个表明代码中存在潜在bug的危险信号。
第6章 编写Python风格的代码
第6章详细介绍什么是Python风格的代码以及编写地道Python代码的几种方式。
第7章 编程术语
第7章解释编程领域常用的术语,特别是经常被混淆的术语。
第8章 常见的Python陷阱
第8章介绍Python语言中常见的混淆现象和bug的由来,并说明解决之法和避免出现问题的编程策略。
第9章 Python的奇特难懂之处
第9章涉及你可能注意不到的有关Python的几件怪事,如字符串驻留和反重力复活节彩蛋。通过探究为何某些数据类型和运算符会导致意外行为,你将更深入地理解Python的工作原理。
第10章 编写高效的函数
第10章详细说明如何组织函数以达到实用性和可读性的极致。你将了解*和**参数语法、函数大小的权衡方法以及函数式编程技术(比如lambda函数)。
第11章 注释、文档字符串和类型提示
第11章涉及程序中非代码部分的重要性及其对可维护性的影响。内容包括编写注释和文档字符串的频率,如何使其信息翔实有用。此外,这一章还将讨论类型提示以及如何使用静态分析器(例如Mypy)检测bug。
第12章 通过Git管理项目
第12章介绍如何使用Git版本控制工具记录源代码的变更历史、恢复工作历史版本和追踪bug首次出现的时间,以及如何使用Cookiecutter工具组织项目文件结构。
第13章 性能测量和大算法分析
第13章解释如何使用timeit和cProfile模块客观地衡量代码速度,还涉及大O算法分析及如何利用它预测代码性能随着处理数据量的增加而减慢的变化趋势。
第14章 项目实战
第14章将这部分所学的技术应用到两个命令行游戏中:汉诺塔(一种益智游戏,规则是将圆盘从一座塔移动到另一座塔)以及经典游戏四子棋(两人制)。
第三部分 面向对象的Python
第15章 面向对象编程和类
第15章明确面向对象编程(OOP)的作用,因为它经常被误解。许多开发人员在自己的代码中滥用OOP而不自知,以为别人都是这么做的,而实际上这会导致代码复杂度过高。这一章将教你如何编写类,更重要的是,还将给出应该和不应该使用类的原因。
第16章 面向对象编程和继承
第16章解释类的继承及其对代码复用的功用。
第17章 Python风格的面向对象编程:属性和魔术方法
第17章介绍面向对象设计中Python独有的功能,如特性、特殊方法和运算符重载。
限于文章篇幅原因,就展示到这里了,有需要的小伙伴可以 点击这里获取!