《Python基础教程(第3版)》是2018年人民邮电出版社出版的图书,作者是[挪]Magnus Lie Hetland。该书全面介绍了Python的基础知识和基本概念,包括列表、元组、字符串、字典及各种语句,高级主题,包括抽象、异常、魔法方法、属性、迭代器,还有Python程序测试、打包、发布等知识,及10个具有实际意义的Python项目的开发过程。

《Python基础教程 第3版》包括Python程序设计的方方面面:首先,从Python的安装开始,随后介绍了Python的基础知识和基本概念,包括列表、元组、字符串、字典以及各种语句;然后循序渐进地介绍了一些相对高一级的主题,包括抽象、异常、魔法方法、属性、迭代器;此后探讨了如何将Python与数据库、网络、C语言等工具结合使用,从而发挥出Python的强大功能,同时介绍了Python程序测试、打包、发布等知识;作者结合前面讲述的内容,按照实际项目开发的步骤向读者介绍了10个具有实际意义的Python项目的开发过程。

本书内容涉及的范围较广,既能为初学者夯实基础,又能帮助程序员提升技能,适合各个层次的Python开发人员阅读参考。

目录

编辑

第1章 快速上手:基础知识

1.1 交互式解释器

1.2 算法是什么

1.3 数和表达式

1.4 变量

1.5 语句

1.6 获取用户输入

1.7 函数

1.8 模块

1.8.1 cmath和复数

1.8.2 回到未来

1.9 保存并执行程序

1.9.1 从命令提示符运行Python脚本

1.9.2 让脚本像普通程序一样

1.9.3 注释

1.10 字符串

1.10.1 单引号字符串以及对引号转义

1.10.2 拼接字符串

1.10.3 字符串表示 str 和 repr

1.10.4 长字符串、原始字符串和字节

1.11 小结

1.11.1 本章介绍的新函数

1.11.2 预告

第2章 列表和元组

2.1 序列概述

2.2 通用的序列操作

2.2.1 索引

2.2.2 切片

2.2.3 序列相加

2.2.4 乘法

2.2.5 成员资格

2.3 列表:Python的主力

2.3.1 函数 list

2.3.2 基本的列表操作

2.3.3 列表方法

2.4 元组:不可修改的序列

2.5 小结

2.5.1 本章介绍的新函数

2.5.2 预告

第3章 使用字符串

3.1 字符串基本操作

3.2 设置字符串的格式:精简版

3.3 设置字符串的格式:完整版

3.3.1 替换字段名

3.3.2 基本转换

3.3.3 宽度、精度和千位分隔符

3.3.4 符号、对齐和用0填充

3.4 字符串方法

3.4.1 center

3.4.2 find

3.4.3 join

3.4.4 lower

3.4.5 replace

3.4.6 split

3.4.7 strip

3.4.8 translate

3.4.9 判断字符串是否满足特定的条件

3.5 小结

3.5.1 本章介绍的新函数

3.5.2 预告

第4章 当索引行不通时

4.1 字典的用途

4.2 创建和使用字典

4.2.1 函数 dict

4.2.2 基本的字典操作

4.2.3 将字符串格式设置功能用于字典

4.2.4 字典方法

4.3 小结

4.3.1 本章介绍的新函数

4.3.2 预告

第5章 条件、循环及其他语句

5.1 再谈print 和 import

5.1.1 打印多个参数

5.1.2 导入时重命名

5.2 赋值魔法

5.2.1 序列解包

5.2.2 链式赋值

5.2.3 增强赋值

5.3 代码块:缩进的乐趣

5.4 条件和条件语句

5.4.1 这正是布尔值的用武之地

5.4.2 有条件地执行和 if 语句

5.4.3 else 子句

5.4.4 elif 子句

5.4.5 代码块嵌套

5.4.6 更复杂的条件

5.4.7 断言

5.5 循环

5.5.1 while 循环

5.5.2 for 循环

5.5.3 迭代字典

5.5.4 一些迭代工具

5.5.5 跳出循环

5.5.6 循环中的 else 子句

5.6 简单推导

5.7 三人行

5.7.1 什么都不做

5.7.2 使用 del 删除

5.7.3 使用 exec 和 eval 执行字符串及计算其结果

5.8 小结

5.8.1 本章介绍的新函数

5.8.2 预告

第6章 抽象

6.1 懒惰是一种美德

6.2 抽象和结构

6.3 自定义函数

6.3.1 给函数编写文档

6.3.2 其实并不是函数的函数

6.4 参数魔法

6.4.1 值从哪里来

6.4.2 我能修改参数吗

6.4.3 关键字参数和默认值

6.4.4 收集参数

6.4.5 分配参数

6.4.6 练习使用参数

6.5 作用域

6.6 递归

6.6.1 两个经典案例:阶乘和幂

6.6.2 另一个经典案例:二分查找

6.7 小结

6.7.1 本章介绍的新函数

6.7.2 预告

第7章 再谈抽象

7.1 对象魔法

7.1.1 多态

7.1.2 多态和方法

7.1.3 封装

7.1.4 继承

7.2 类

7.2.1 类到底是什么

7.2.2 创建自定义类

7.2.3 属性、函数和方法

7.2.4 再谈隐藏

7.2.5 类的命名空间

7.2.6 指定超类

7.2.7 深入探讨继承

7.2.8 多个超类

7.2.9 接口和内省

7.2.10 抽象基类

7.3 关于面向对象设计的一些思考

7.4 小结

7.4.1 本章介绍的新函数

7.4.2 预告

第8章 异常

8.1 异常是什么

8.2 让事情沿你指定的轨道出错

8.2.1 raise 语句

8.2.2 自定义的异常类

8.3 捕获异常

8.3.1 不用提供参数

8.3.2 多个 execpt 子句

8.3 捕获异常

8.3.1 不用提供参数

8.3.2 多个except子句

8.3.3 一箭双雕

8.3.4 捕获对象

8.3.5 一网打尽

8.3.6 万事大吉时

8.3.7 最后

8.4 异常和函数

8.5 异常之禅

8.6 不那么异常的情况

8.7 小结

8.7.1 本章介绍的新函数

8.7.2 预告

第9章 魔法方法、特性和迭代器

9.1 如果你使用的不是 Python 3

9.2 构造函数

9.2.1 重写普通方法和特殊的构造函数

9.2.2 调用未关联的超类构造函数

9.2.3 使用函数 super

9.3 元素访问

9.3.1 基本的序列和映射协议

9.3.2 从 list、dict 和 str 派生

9.4 其他魔法方法

9.5 特性

9.5.1 函数 property

9.5.2 静态方法和类方法

9.5.3 __getattr__、__setattr__ 等方法

9.6 迭代器

9.6.1 迭代器协议

9.6.2 从迭代器创建序列

9.7 生成器

9.7.1 创建生成器

9.7.2 递归式生成器

9.7.3 通用生成器

9.7.4 生成器的方法

9.7.5 模拟生成器

9.8 八皇后问题

9.8.1 生成器的回溯

9.8.2 问题

9.8.3 状态表示

9.8.4 检测冲突

9.8.5 基线条件

9.8.6 递归条件

9.8.7 扫尾工作

9.9 小结

9.9.1 本章介绍的新函数

9.9.2 预告

第10章 开箱即用

10.1 模块

10.1.1 模块就是程序

10.1.2 模块是用来下定义的

10.1.3 让模块可用

10.1.4 包

10.2 探索模块

10.2.1 模块包含什么

10.2.2 使用 help 获取帮助

10.2.3 文档

10.2.4 使用源代码

10.3 标准库:一些深受欢迎的模块

10.3.1 sys

10.3.2 os

10.3.3 fileinput

10.3.4 集合、堆和双端队列

10.3.5 time

10.3.6 random

10.3.7 shelve 和 json

10.3.8 re

10.3.9 其他有趣的标准模块

10.4 小结

10.4.1 本章介绍的新函数

10.4.2 预告

第11章 文件

11.1 打开文件

11.2 文件的基本方法

11.2.1 读取和写入

11.2.2 使用管道重定向输出

11.2.3 读取和写入行

11.2.4 关闭文件

11.2.5 使用文件的基本方法

11.3 迭代文件内容

11.3.1 每次一个字符(或字节)

11.3.2 每次一行

11.3.3 读取所有内容

11.3.4 使用 fileinput 实现延迟行迭代

11.3.5 文件迭代器

11.4 小结

11.4.1 本章介绍的新函数

11.4.2 预告

第12章 图形用户界面

12.1 创建GUI示例应用程序

12.1.1 初探

12.1.2 布局

12.1.3 事件处理

12.1.4 最终的程序

12,2 使用其他 GUI 工具包

12.3 小结

第13章 数据库支持

13.1 Python数据库API

13.1.1 全局变量

13.1.2 异常

13.1.3 连接和游标

13.1.4 类型

13.2 SQLite 和 PySQLite

13.2.1 起步

13.2.2 数据库应用程序示例

13.3 小结

13.3.1 本章介绍的新函数

13.3.2 预告

第14章 网络编程

14.1 几个网络模块

14.1.1 模块socket

14.1.2 模块 urllib 和 urllib2

14.1.3 其他模块

14.2 SocketServer 及相关的类

14.3 多个连接

14.3.1 使用 SocketServer 实现分叉和线程化

14.3.2 使用 select 和 poll 实现异步 I/O

14.4 Twisted

14.4.1 下载并安装 Twisted

14.4.2 编写 Twisted 服务器

14.5 小结

14.5.1 本章介绍的新函数

14.5.2 预告

第15章 Python 和 Web

15.1 屏幕抓取

15.1.1 TIdy 和 XHTML 解析

15.1.2 BeauTIful Soup

15.2 使用 CGI 创建动态网页

15.2.1 第一步:准备 Web 服务器

15.2.2 第二步:添加!#行

15.2.3 第三步:设置文件权限

15.2.4 CGI 安全风险

15.2.5 简单 CGI 脚本

15.2.6 使用 cgitb 进行调试

15.2.7 使用模块 cgi

15.2.8 简单的表单

15.3 使用 Web 框架

15.4 Web 服务:更高级的抓取

15.4.1RSS 和相关内容

15.4.2使用 XML-RPC 进行远程过程调用

15.4.3 SOAP

15.5 小结

15.5.1 本章介绍的新函数

15.5.2 预告

第16章 测试基础

16.1 先测试再编码

16.1.1 准确的需求说明

16.1.2 做好应对变化的准备

16.1.3 测试四步曲

16.2 测试工具

16.2.1 doctest

16.2.2 unittest

16.3 超越单元测试

16.3.1 使用PyChecker 和 PyLint 检查源代码

16.3.2 性能分析

16.4 小结

16.4.1 本章介绍的新函数

16.4.2 预告

第17章 扩展Python

17.1 鱼和熊掌兼得

17.2 简单易行的方式:Jython 和 IronPython

17.3 编写 C 语言扩展

17.3.1 SWIG

17.3.2 手工编写扩展

17.4 小结

17.4.1 本章介绍的新函数

17.4.2 预告

第18章 程序打包

18.1 Setuptools 基础

18.2 打包

18.3 编译扩展

18.4 使用py2exe创建可执行程序

18.5 小结

18.5.1 本章介绍的新函数

18.5.2 预告

第19章 趣味编程

19.1 为何要有趣

19.2 编程柔术

19.3 原型设计

19.4 配置

19.4.1 提取异常

18.4.2 配置文件

19.5 日志

19.6 如果你已不胜其烦

19.7 如果你想深入学习

19.8 小结

第20章 项目1:自动添加标签

20.1 问题描述

20.2 有用的工具

20.3 准备工作

20.4 初次实现

20.4.1 找出文本块

20.4.2 添加一些标记

20.5 再次实现

20.5.1 处理程序

20.5.2 处理程序的超类

20.5.3 规则

20.5.4 规则的超类

20.5.5 过滤器

20.5.6 解析器

20.5.7 创建规则和过滤器

20.5.8 整合起来

20.6 进一步探索

第21章 项目2:绘制图表

21.1 问题描述

21.2 有用的工具

21.3 准备工作

21.4 初步实现

21.4.1 使用 ReportLab 绘图

21.4.2 绘制折线

21.4.3 编写原型

21.5 再次实现

21.5.1 获取数据

21.5.2 使用 LinePlot 类

21.6 进一步探索

第22章 项目3:万能的XML

22.1 问题描述

22.2 有用的工具

22.3 准备工作

22.4 初次实现

22.4.1 创建简单的内容处理程序

22.4.2 创建 HTML 页面

22.5 再次实现

22.5.1 分派器混合类

22.5.2 将首部和尾部写入文件的方法以及默认处理程序

22.5.3 支持目录

22.5.4 事件处理程序

22.6 进一步探索

第23章 项目4:新闻汇总

23.1 问题描述

23.2 有用的工具

23.3 准备工作

23.4 初次实现

23.5 再次实现

23.6 进一步探索

第24章 项目5:虚拟茶话会

24.1 问题描述

24.2 有用的工具

24.3 准备工作

24.4 初次实现

24.4.1 ChatServer 类

24.4.2 ChatSession 类

24.4.3 整合起来

24.5 再次实现

24.5.1 基本的命令解释功能

24.5.2 聊天室

24.5.3 登录和退出聊天室

24.5.4 主聊天室

24.5.5 新的服务器

24.6 进一步探索

第25章 项目6:使用 CGI 进行远程编辑

25.1 问题描述

25.2 有用的工具

25.3 准备工作

25.4 初次实现

25.5 再次实现

25.5.1 创建文件名表单

25.5.2 编写编辑器脚本

25.5.3 编写保存脚本

25.5.4 运行编辑器

25.6 进一步探索

第26章 项目7:自建公告板

26.1 问题描述

26.2 有用的工具

26.3 准备工作

26.4 初次实现

26.5 再次实现

26.5.1 编写脚本 main.cgi

26.5.2 编写脚本 view.cgi

26.5.3 编写脚本 edit.cgi

26.5.4 编写脚本 save.cgi

26.5.5 尝试使用

26.6 进一步探索

第27章 项目8:使用 XML-RPC 共享文件

27.1 问题描述

27.2 有用的工具

27.3 准备工作

27.4 初次实现

27.4.1 实现简单的节点

27.4.2 尝试使用

27.5 再次实现

27.5.1 创建客户端界面

27.5.2 引发异常

27.5.3 验证文件名

27.5.4 尝试使用

27.6 进一步探索

第28章 项目9:使用 GUI 共享文件

28.1 问题描述

28.2 有用的工具

28.3 准备工作

28.4 初次实现

28.5 再次实现

28.6 进一步探索

第29章 项目10:自制街机游戏

29.1 问题描述

29.2 有用的工具

29.2.1 pygame

29.2.2 pygame.locals

29.2.3 pygame.display

29.2.4 pygame.font

29.2.5 pygame.sprite

29.2.6 pygame.mouse

29.2.7 pygame.event

29.2.8 pygame.image

29.3 准备工作

29.4 初次实现

29.5 再次实现

29.6 进一步探索

附录A 简明教程

附录B Python 参考手册

python基础教程免费下载-Python基础教程第三版PDF电子书免费下载相关推荐

  1. python编程入门第3版pdf-Python编程入门第3版PDF电子书免费下载

    本文档的主要内容详细介绍的是Python编程入门第3版PDF电子书免费下载. Python是一种解释型.面向对象.动态数据类型的高级程序设计语言,自20世纪90年代初诞生至今,逐渐被广泛应用于处理系统 ...

  2. python编程入门第3版pdf-Python核心编程第3版PDF电子书免费下载

    本书是经典畅销图书<Python 核心编程(第二版)>的全新升级版本,总共分为 3 部分.第 1 部分讲解了 Python 的一些通用应用,包括正则表达式.网络编程.Internet 客户 ...

  3. LINUX设备驱动程序第三版.pdf,linux设备驱动程序第3版.pdf免费下载链接,学习资源下载

    LINUX设备驱动程序第三版.pdf免费下载链接(.pdf书籍的优点是便于直接在电脑中保存有电脑就可以阅读,如果觉得这本书给你提供到了很大的帮助,可以去书店补一本纸质版) 资源保存在腾讯微云上,下载不 ...

  4. python基础教程 下载-Python基础教程第3版中国PDF电子书免费下载

    本书包括 Python 程序设计的方方面面:首先,从 Python 的安装开始,随后介绍了 Python 的基础知识和基本概念,包括列表.元组.字符串.字典以及各种语句:然后,循序渐进地介绍了一些相对 ...

  5. python基础教程3下载-Python基础教程第3版中国PDF电子书免费下载

    本书包括 Python 程序设计的方方面面:首先,从 Python 的安装开始,随后介绍了 Python 的基础知识和基本概念,包括列表.元组.字符串.字典以及各种语句:然后,循序渐进地介绍了一些相对 ...

  6. python基础教程pdf-python基础教程第三版.pdf

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp计算机&nbsp>&nbspPython python基础教程第三版.pdf689页 本文档 ...

  7. python从入门到实践电子版-Python编程从入门到实践PDF电子书免费下载

    本书是一本针对所有层次的 Python 读者而作的 Python 入门书.全书分两部分 :第一部分介绍用 Python 编程所必须了解的基本概念,包括 matplotlib.NumPy 和 Pygal ...

  8. 怎样下载安装python编程软件3.85_Python3.9最新版-Python编程开发工具下载v3.9.0 官方正式版-西西软件下载...

    Python编程开发工具是一款非常强大的编程软件,Python 是一种面向对象.直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定.这种语言具有非常简捷 ...

  9. 虫师selenium3+python自动化测试电子版_Selenium3 Java自动化测试实战 第三版.pdf

    <Selenium2Java 自动化测试实战(修正版)> Selenium3 Java 自动化测试项目实战 第三版( ) 作者:虫师 1 <Selenium2Java 自动化测试实战 ...

最新文章

  1. Java延迟加载的最佳实践应用示例!
  2. Linux疑难杂症解决方案100篇(十一)-ubuntu crontab 详细规则及不执行时的解决方法
  3. Android开源SIP协议栈比较
  4. python创建一个集合_python如何创建一个集合
  5. 那么到底什么是热点???
  6. Java编程的逻辑 (84) - 反射
  7. SAR图像变化检测的评价方法
  8. 穿了好几个马甲,差点没认出来是二分查找
  9. 实战BootStrap:利用BootStrap制作全平台响应式站点
  10. php redis 定时任务,利用redis实现定时任务,完全不需要crontab
  11. 中美线规线径对照表(详细版)
  12. 计算广告学(Computational Advertising)概述学习
  13. Ubuntu16.04 忘记登陆密码 重新设置密码
  14. iOS调用高德地图导航
  15. matlab模拟出现较大误差是什么原因,关于使用lsqcurvefit拟合曲线出现误差巨大的问题...
  16. java不支持bks,java不支持bks
  17. 005--Keil使用--出现integer conversion resulted in truncation
  18. BIDI单纤双向光模块
  19. [BUGKU] [MISC] 爆照
  20. rand函数和srand函数的用法和区别

热门文章

  1. 规模化团队敏控创变之路
  2. 从JDBC到Mybatis以及IDEA通过mybatis开发Springboot
  3. nodemcu刷鸿蒙系统,ESP01S刷入NodeMCU固件
  4. 零基础数据挖掘入门系列(二) - 数据的探索性(EDA)分析
  5. torch的GLU函数
  6. 2021考研英语大作文写作必备15个话题
  7. aircrack-ng破解wifi密码
  8. 常见浏览器以及对应驱动的下载与使用
  9. 论文解读:《利用注意力机制提高DNA的N6-甲基腺嘌呤位点的鉴定》
  10. 基于jsp+mysql+ssm知了堂财务报账管理系统-计算机毕业设计