Python是一种面向对象、解释性的高级程序语言,它已经被应用在众多领域,包括Web开发、操作系统管理、服务器运维的自动化脚本、科学计算、桌面软件、服务器软件(网络软件)、游戏等方面。
本书以Window平台、系统全面的讲解了Python3的基础知识,其中,第1章主要是带领大家认识Python;第2章主要针对Python的基础语法进行讲解;第3章主要介绍的是Python中的常用语句;第4~5章主要介绍了字符串、列表、元组、字典等类型;第6~7章讲解了函数的基础和高级知识。第8章讲解了Python中的文件操作;第9章讲解了Python中异常的相关知识;第10章讲解了Python中的模块;第11~12章侧重讲解了面向对象编程思想;第13章围绕着面向对象的编程思想,开发了一个飞机大战的小游戏。
Python是一种面向对象、解释性的高级程序语言,它已经被应用在众多领域,包括Web开发、操作系统管理、服务器运维的自动化脚本、科学计算、桌面软件、服务器软件(网络软件)、游戏等方面。
本书以Window平台、系统全面的讲解了Python3的基础知识,其中,第1章主要是带领大家认识Python;第2章主要针对Python的基础语法进行讲解;第3章主要介绍的是Python中的常用语句;第4~5章主要介绍了字符串、列表、元组、字典等类型;第6~7章讲解了函数的基础和高级知识。第8章讲解了Python中的文件操作;第9章讲解了Python中异常的相关知识;第10章讲解了Python中的模块;第11~12章侧重讲解了面向对象编程思想;第13章围绕着面向对象的编程思想,开发了一个飞机大战的小游戏。
特色一:全新Python3语法,一步提升Python编程水平
相对于Python2,Python3更加优秀。但考虑到Python3兼容Python2还有一段很长的路要走,本书在重点讲解Python3的同时,在很多地方对比着讲解了Python2,涵盖了成为一名初级Python开发人员所需的一切知识,同时,还针对复杂让读者学专业的Python风格,养成良好的编程习惯。
特色二:化繁为简,降低读者的入门难度
本书作为Python入门级教材,多采用趣味生活图来引入专业词汇,降低读者学习Python的入门难度,同时,本书还提供了大量的实例代码,从小的代码片段到功能齐全的应用程序一应俱全,真正让读者学会Python。
特色三:综合项目,旨在巩固Python技能
本书最后一章结合前面的知识,开发了一个《飞机大战》的综合项目,该项目兼趣味性和实用性,旨在提高读者的Python技能。
第1章 Python概述 1 1.1 认识Python 2 1.1.1 Python的发展历程 2 1.1.2 Python的特点 2 1.1.3 Python的应用领域 3 1.1.4 Python的版本 4 1.1.5 Python 2.x和Python 3.x版本区别 5 1.2 Python安装 8 1.2.1 Windows安装Python开发环境 9 1.2.2 Linux安装Python开发环境 12 1.2.3 Mac OS安装Python开发环境 13 1.3 IPython——交互式解释器 14 1.4 集成开发环境——PyCharm 15 1.4.1 PyCharm的下载安装 15 1.4.2 PyCharm的使用 18 1.5 Python程序执行原理 22 1.6 本章小结 22 1.7 本章习题 23 第2章 Python基础语法 25 2.1 基本语法 26 2.1.1 注释 26 2.1.2 行与缩进 26 2.1.3 语句换行 27 2.2 变量和数据类型 27 2.2.1 变量和赋值 27 2.2.2 变量的类型 28 2.3 标识符和关键字 30 2.3.1 标识符 30 2.3.2 关键字 31 2.4 简单数值类型 31 2.4.1 整型 31 2.4.2 浮点型 32 2.4.3 布尔类型 32 2.4.4 复数类型 33 2.4.5 数字类型转换 33 2.5 运算符 34 2.5.1 算术运算符 34 2.5.2 赋值运算符 35 2.5.3 复合赋值运算符 36 2.5.4 比较运算符 37 2.5.5 逻辑运算符 39 2.5.6 成员运算符 40 2.6 位运算 41 2.6.1 按位左移 42 2.6.2 按位右移 42 2.6.3 按位与 42 2.6.4 按位或 43 2.6.5 按位异或 43 2.6.6 按位取反 43 2.7 运算符优先级 44 2.8 本章小结 45 2.9 本章习题 45 第3章 Python常用语句 48 3.1 判断语句 49 3.1.1 if语句 49 3.1.2 if-else语句 50 3.1.3 if-elif语句 52 3.1.4 if嵌套 53 3.1.5 if案例——猜拳游戏 54 3.2 循环语句 55 3.2.1 while循环 56 3.2.2 for循环 56 3.2.3 while循环案例——计算1~100偶数和 57 3.2.4 while嵌套 57 3.2.5 while嵌套案例——打印图形 58 3.2.6 while嵌套案例——九九乘法表 59 3.3 Python的其他语句 60 3.3.1 break语句 60 3.3.2 continue语句 60 3.3.3 pass语句 61 3.3.4 else语句 61 3.4 本章小结 62 3.5 本章习题 62 第4章 字符串 65 4.1 字符串介绍 66 4.1.1 什么是字符串 66 4.1.2 转义字符 66 4.2 字符串的输出和输入 68 4.2.1 字符串输出 68 4.2.2 字符串输入 69 4.3 访问字符串中的值 70 4.3.1 字符串的存储方式 70 4.3.2 使用切片截取字符串 70 4.4 字符串内建函数 70 4.4.1 find 71 4.4.2 index 72 4.4.3 count 73 4.4.4 replace 73 4.4.5 splite 74 4.4.6 capitalize 74 4.4.7 title 75 4.4.8 startswith 75 4.4.9 endswith 76 4.4.10 upper 76 4.4.11 ljust 77 4.4.12 rjust 77 4.4.13 center 78 4.4.14 lstrip 78 4.4.15 rstrip 79 4.4.16 strip 79 4.5 字符串运算符 80 4.6 本章小结 81 4.7 本章习题 81 第5章 列表、元组和字典 84 5.1 列表概述 85 5.2 列表的循环遍历 85 5.3 列表的常见操作 86 5.3.1 在列表中增加元素 86 5.3.2 在列表中查找元素 88 5.3.3 在列表中修改元素 89 5.3.4 在列表中删除元素 89 5.3.5 列表的排序操作 91 5.4 列表的嵌套 92 5.4.1 什么是列表的嵌套 92 5.4.2 列表嵌套案例——分配老师到 不同的办公室 92 5.5 元组 93 5.6 字典 96 5.6.1 字典介绍 96 5.6.2 字典的常见操作 96 5.6.3 字典的遍历 100 5.7 本章小结 101 5.8 本章习题 102 第6章 Python函数 105 6.1 什么是函数 106 6.2 函数的定义和调用 106 6.2.1 定义函数 106 6.2.2 调用函数 107 6.3 函数的参数 107 6.3.1 函数参数的传递 107 6.3.2 默认参数 108 6.3.3 不定长参数 109 6.4 函数的返回值 111 6.5 函数的四种类型 111 6.5.1 无参数、无返回值的函数 111 6.5.2 无参数、有返回值的函数 112 6.5.3 有参数、无返回值的函数 112 6.5.4 有参数、有返回值的函数 113 6.6 函数案例——名片管理器 113 6.7 函数的嵌套调用 116 6.8 变量作用域 117 6.8.1 LEGB原则 117 6.8.2 全局变量和局部变量 118 6.8.3 global和nonlocal关键字 119 6.9 递归函数和匿名函数 120 6.9.1 递归函数 120 6.9.2 匿名函数 121 6.10 日期时间函数 123 6.10.1 时间函数 123 6.10.2 日历函数 127 6.11 随机数函数 128 6.12 阶段案例——学生管理系统 130 6.13 本章小结 134 6.14 本章习题 134 第7章 高级函数 137 7.1 闭包 138 7.2 装饰器 139 7.2.1 什么是装饰器 139 7.2.2 多个装饰器 141 7.2.3 装饰器对有参数函数进行装饰 143 7.2.4 装饰器对带有返回值的函数进行装饰 145 7.2.5 带有参数的装饰器 146 7.3 常见Python内置函数 147 7.3.1 map函数 147 7.3.2 filter函数 148 7.3.3 reduce函数 149 7.4 本章小结 150 7.5 本章习题 150 第8章 Python文件操作 153 8.1 文件的打开和关闭 154 8.1.1 文件的打开 154 8.1.2 文件模式 154 8.1.3 文件的关闭 155 8.2 文件的读写 155 8.2.1 写文件 155 8.2.2 读文件 156 8.2.3 文件读写应用——制作文件的备份 158 8.2.4 文件的定位读写 159 8.3 文件的重命名和删除 162 8.3.1 文件的重命名 162 8.3.2 文件的删除 162 8.4 文件夹的相关操作 162 8.5 文件操作应用——批量修改文件名 163 8.6 文件案例——学生管理系统(文件版) 164 8.7 本章小结 166 8.8 本章习题 166 第9章 异常 169 9.1 异常简介 170 9.2 异常类 170 9.3 异常处理 172 9.3.1 捕获简单异常 173 9.3.2 捕获多个异常 174 9.3.3 捕获异常的描述信息 175 9.3.4 捕获所有的异常 176 9.3.5 没有捕获到异常 178 9.3.6 终止行为 179 9.4 抛出异常 181 9.4.1 raise语句 181 9.4.2 assert语句 183 9.5 自定义异常 184 9.6 预定义清理 185 9.6.1 with语句 185 9.6.2 上下文管理器 186 9.7 本章小结 187 9.8 本章习题 187 第10章 Python模块 189 10.1 模块的基本使用 190 10.2 模块的制作 192 10.3 Python中的包 193 10.4 模块的发布 194 10.5 模块的安装 196 10.6 本章小结 196 10.7 本章习题 197 第11章 Python面向对象编程(上) 198 11.1 面向对象编程概述 199 11.2 类和对象 200 11.2.1 类和对象的关系 200 11.2.2 类的定义 201 11.2.3 根据类创建对象 201 11.3 构造方法和析构方法 202 11.3.1 构造方法 203 11.3.2 析构方法 204 11.4 self的使用 205 11.5 运算符重载 206 11.5.1 加法运算符重载 206 11.5.2 索引和分片重载 207 11.5.3 定制对象的字符串形式 210 11.6 阶段案例——反恐精英CS 212 11.7 本章小结 219 11.8 本章习题 219 第12章 Python面向对象编程(下) 221 12.1 封装(隐藏数据和保护 属性) 222 12.2 继承 223 12.2.1 单继承 223 12.2.2 多继承 225 12.2.3 重写父类方法与调用父类方法 227 12.3 多态 229 12.4 类属性和实例属性 231 12.5 类方法和静态方法 232 12.6 本章小结 234 12.7 本章习题 234 第13章 飞机大战 236 13.1 游戏介绍 237 13.1.1 飞机大战游戏简介 237 13.1.2 分析游戏显示的过程 238 13.2 游戏准备工作 238 13.2.1 添加pygame模块 238 13.2.2 搭建游戏界面 241 13.2.3 检查键盘的输入 242 13.3 显示玩家飞机,控制移动方向 244 13.4 玩家飞机发射子弹 246 13.4.1 显示子弹 246 13.4.2 子弹移动 247 13.5 敌人飞机 249 13.5.1 显示敌人飞机 249 13.5.2 控制敌人飞机移动 251 13.5.3 敌人飞机发射子弹 252 13.6 优化程序代码 254 13.6.1 抽取子弹基类 254 13.6.2 抽取飞机基类 255 13.7 本章小结 258