Python程序设计入门与实战(微课版)

为零基础的读者编写的通俗易懂、实战引领的入门Python书
分享 推荐 0 收藏 44 阅读 5.9K
张毅恒 (作者) 978-7-115-55344-7

关于本书的内容有任何问题,请联系 张斌

本书是粤嵌公司策划并组织编写的产学合作协同育人系列教材之一,实践性较强,涵盖了高校相关专业方向的主要课程。
本书针对零基础的读者,通俗易懂、实战引领。
本书作者具有企业开发实战经验和行业培训的经验,也为高校学生讲授相关的课程,理论结合实践。

内容摘要

本书主要从零基础读者的角度出发,通过简单易懂的语言讲解知识,内容图文并茂,知识点由浅入深,案例充足,帮助读者通过课后习题巩固所学知识点。全书共分为12章,内容包括Python环境搭建、Python变量命令规范、Python中的各种数据类型、流程控制语句、继承、多态、类与方法、文件的读写、文件的编码、正则表达式、栈、堆、链表、树、查找算法、排序算法、递归算法和五子棋对战项目等。本书配有丰富的课后习题,能快速帮助读者提高编程水平,提升对问题的思考能力和解决能力。
本书可作为本科和高职院校Python相关课程的教材,也可供Python语言初学者、爱好者和相关培训机构使用。

前言

  Python语言是当前较为活跃的开发语言,它在爬虫、数据分析、自动化运维等领域有着非常广泛的应用。随着大数据时代的来临,Python迎来前所未有的发展机遇。
  目前越来越多高等院校的计算机相关专业都开设了“Python程序设计”这门课程。作为这样一门实践性较强的课程,需要读者更多地动手上机编程。本书以培养读者动手能力为目的,提供了大量程序清单和相应的内存分析原理,并配有习题以供读者巩固所学知识,帮助读者掌握编程技术,以解决实际的技术问题。
本书内容
  本书将Python从入门到实战所需要的知识点分为5篇12章进行讲解,具体内容如下。
  第一篇:基础篇(第1~5章)。本篇主要阐述Python的发展史,介绍开发环境,普及一些计算机的基本原理,介绍Python的命名规范、基本语法、Python中的各种数据类型、流程控制语句、Python函数等内容。目的是使读者快速掌握Python环境的搭建方法并选择合适的编译工具,掌握基本的语法规则,为项目的开发打下必要的基础。
  第二篇:面向对象篇(第6章)。本篇主要介绍面向对象的思想,让读者对继承、多态、类与方法有深入的理解。通过本篇的学习,读者将对面向对象有基本的认识,能够理解类、对象、面向对象的基本特征以及面向对象与面向过程的异同。
  第三篇:高级篇(第7~9章)。本篇主要介绍如何捕获异常和处理异常,文件的读写、序列化与反序列化和编码问题,正则常用函数、正则模式的特殊字符等。通过本篇的学习,读者将能理解编译时异常及运行时异常的异同,了解如何处理异常,掌握外部文件读写的方法,对编码的概念有基本的了解,并可以掌握更强大的字符串检索方法。
  第四篇:数据结构与算法篇(第10~11章)。本篇介绍了常用的数据结构与算法,包括栈、堆、链表、树、查找算法、排序算法和递归算法等。通过对本篇的学习,读者可以对一些较复杂的数据进行整理和归类,并根据项目实际场景选择合适的算法对数据进行快速的搜索和排序。
  第五篇:实战篇(第12章)。本篇详细介绍如何开发一个五子棋对战项目。通过本篇的学习,读者可以完成一个锻炼思维的经典项目。  
本书特点
* 图文并茂,由浅入深。本书主要以Python语言编程的初学者为对象。首先,从Python语言基础讲起,生动详细地讲解各个知识点;其次,讲解Python语言的面向对象、异常处理、文件、正则等核心内容;最后,讲解Python语言中的数据结构、算法、实战项目等高级技术。本书在每个步骤中,均以图文并茂、由浅入深的方式讲解内容。读者在学习时一目了然,能快速地掌握本书内容。
* 案例充足,动手实践。动手实践是学习编程最有效的方式之一。本书中每个知识点都以案例进行讲解,代码完善,注释齐全。读者通过动手实践,可以进一步加强对知识点和代码的理解。
* 课后习题,巩固知识。本书每章(除第12章)都包含丰富的课后习题,基本涵盖所在章的知识点,让读者对本章所学内容进行全面的巩固。习题的题型多样,包括选择、填空、编程等,可使读者进一步加强动手能力和思考能力。习题答案、代码等相关的配套资源可登录人邮教育社区(www.ryjiaoyu.com)下载。
致谢
  感谢在粤嵌公司参与Python课程学习的同学们,他们在学习过程中与笔者有很多讨论,这些讨论帮助笔者讲清了很多重要的问题。感谢参与授课工作的叶文强老师和张成立老师,他们对本书的内容和编排提出了很好的建议。感谢粤嵌公司的各位领导,他们给笔者提供了足够大的平台和足够多的资源,使本书得以成型。最后,希望得到读者的意见和反馈,在此表示感谢。

目录

第一篇 基 础 篇

第1章 Python简介 1
 1.1 Python概述 2
 1.2 Python的特点 3
 1.3 Python2和Python3的区别 3
 1.4 搭建Python开发环境 4
 1.5 第一个Python程序 6
 1.6 集成开发环境PyCharm 7
 习题 11
第2章 Python基础语法 13
 2.1 注释 13
2.1.1 单行注释 13
2.1.2 多行注释 14
 2.2 标识符 14
 2.3 关键字 15
 2.4 变量 17
 2.5 输入与输出 19
 2.6 运算符 20
 习题 24
第3章 Python数据类型 25
 3.1 数值型 25
3.1.1 不同数值型之间的运算 26
3.1.2 强制类型转换 27
3.1.3 科学记数法 29
3.1.4 常用数学运算 30
3.1.5 分数与小数 31
 3.2 字符串 32
3.2.1 索引 32
3.2.2 访问字符串中的元素 33
3.2.3 转义字符 34
3.2.4 字符串格式化 35
3.2.5 与字符串相关的运算符 36
3.2.6 用三引号描述字符串 37
3.2.7 字符串常用的函数和方法 37
 3.3 列表 38
3.3.1 访问列表中的元素 38
3.3.2 往列表中添加元素 39
3.3.3 从列表中删除元素 42
3.3.4 初始化列表 44
3.3.5 二维列表 46
3.3.6 列表常用的函数、方法和运算符 47
3.3.7 浅拷贝和深拷贝 48
 3.4 元组 51
3.4.1 访问元组中的元素 52
3.4.2 元组的特点 53
3.4.3 元组常用的函数和运算符 55
3.4.4 元组与列表的转换 55
 3.5 集合 56
3.5.1 集合的特征 57
3.5.2 集合的相关操作 58
 3.6 字典 62
3.6.1 访问字典中的元素 62
3.6.2 修改字典中的元素 63
3.6.3 删除字典中的元素 64
3.6.4 字典常用的函数和方法 65
3.6.5 遍历字典 65
3.6.6 字典和列表的结合 66
3.6.7 zip()函数 67
 习题 67
第4章 分支结构和循环结构 69
 4.1 分支结构 69
 4.2 循环结构 72
4.2.1 while循环 72
4.2.2 for循环 72
4.2.3 跳出循环 74
4.2.4 迭代器 76
4.2.5 enumerate()函数 78
4.2.6 pass 79
 习题 79
第5章 Python函数 82
 5.1 函数概述 82
5.1.1 函数的定义 83
5.1.2 函数的调用 83
5.1.3 函数的说明 83
 5.2 函数参数与返回值 84
5.2.1 给函数传递参数 85
5.2.2 默认参数 85
5.2.3 函数的返回值 87
5.2.4 可变类型与不可变类型 88

5.2.5 可变参数、关键字参数、命名关键字参数与仅位置参数 90
 5.3 全局变量 93
5.3.1 global全局变量 93
5.3.2 nonlocal非局部变量 95
 5.4 匿名函数 96
5.4.1 语法 96
5.4.2 三元运算 98
 5.5 函数作为对象 98
5.5.1 基本概念 98
5.5.2 函数作为对象的应用 100
 5.6 生成器 103
 5.7 闭包 105
5.7.1 什么是闭包 105
5.7.2 调用闭包函数 106
5.7.3 闭包在内存中的状态 107
5.7.4 闭包的作用 109
 5.8 装饰器 109
5.8.1 基本概念 109
5.8.2 装饰器的原理 115
5.8.3 多个装饰器 117
5.8.4 装饰带参数的函数 122
5.8.5 装饰有返回值的函数 123
5.8.6 带有参数的装饰器 125
 习题 126
 
第二篇 面向对象篇
 
第6章 Python面向对象 130
 6.1 面向对象思想 130
 6.2 类与对象 132
 6.3 属性 134
 6.4 方法 136
 6.5 私有 142
 6.6 继承 145
6.6.1 继承的实现 145
6.6.2 object 150
6.6.3 多继承 150
6.6.4 钻石继承 151
6.6.5 MRO 153
 6.7 多态 154
 6.8 对象属性与类属性 157
 6.9 对象方法与类方法 158
 6.10 静态方法 159
 6.11 __new__()方法 161
 6.12 运算符重载 165
 6.13 模块与导包 166
 习题 167
 
第三篇 高 级 篇
 
第7章 异常处理 172
 7.1 异常概述 172
 7.2 异常处理的常见操作 172
 习题 179
第8章 文件 181
 8.1 文件的基本操作 181
8.1.1 打开和关闭文件 181
8.1.2 读文件 183
8.1.3 写文件 185
8.1.4 文件读写位置 186
8.1.5 with...as 188
 8.2 序列化与反序列化 189
 8.3 编码与解码 190
8.8.1 基本概念 190

8.8.2 常见的编码 191
 习题 194
第9章 正则表达式 195
 9.1 正则表达式概述 195
 9.2 常用正则函数 196
9.2.1 match()函数 196
9.2.2 search()函数 197
9.2.3 group()函数 198
9.2.4 sub()函数 199
 9.3 贪婪模式与非贪婪模式 200
 9.4 正则表达式常见应用 201
9.4.1 匹配邮政编码 201
9.4.2 匹配年龄 202
9.4.3 匹配IP地址 203
 习题 204
 
第四篇 数据结构与算法篇
 
第10章 数据结构 207
 10.1 数组 207
 10.2 栈 207
 10.3 队列 210
 10.4 链表 216
 10.5 树 222
 10.6 堆 227
 10.7 散列表 232
 10.8 图 235
 习题 237
第11章 算法 239
 11.1 查找算法 239
11.1.1 顺序查找法 239
11.1.2 二分查找法 240
 11.2 排序算法 242
11.2.1 冒泡排序 242
11.2.2 选择排序 245
11.2.3 插入排序 248
11.2.4 希尔排序 251
11.2.5 快速排序 254
11.2.6 归并排序 256
11.2.7 堆排序 259
11.2.8 排序算法评价标准 262
 11.3 递归算法 263
 习题 265
 
第五篇 实 战 篇
 
第12章 项目开发与实现——五子棋 269
 12.1 游戏说明 269
 12.2 建立模型 270
 12.3 输出棋盘 271
 12.4 放置棋子 273
 12.5 计算机下棋策略 276
 12.6 读取用户下棋的位置 278
 12.7 判断赢棋条件 279
 12.8 程序主流程 282 

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

张毅恒。广州粤嵌通信科技股份有限公司人工智能学科负责人。系统架构师、高级工程师。5年多研发经验,8年多技术讲师经验。曾在纳斯达克上市公司任职,负责手机与平板电脑Android系统的移植工作;曾参与车联网系统的研发,负责整个系统的架构与搭建工作。从Linux系统移植、后台服务器程序开发,到Android应用开发、H5微信小程序,到机器学习与数据分析,都有丰富的实践和教学工作经验。

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部