新書推薦:
《
失衡与重塑——百年变局下的中国与世界经济
》
售價:HK$
132.2
《
不被定义的年龄:积极年龄观让我们更快乐、健康、长寿
》
售價:HK$
77.3
《
南方谈话:邓小平在1992
》
售價:HK$
80.6
《
纷纭万端 : 近代中国的思想与社会
》
售價:HK$
109.8
《
中国古代文体形态研究(第四版)(中华当代学术著作辑要)
》
售價:HK$
168.0
《
朋党之争与北宋政治·大学问
》
售價:HK$
99.7
《
甲骨文丛书·波斯的中古时代(1040-1797年)
》
售價:HK$
88.5
《
以爱为名的支配
》
售價:HK$
62.7
|
編輯推薦: |
本书是粤嵌公司策划并组织编写的产学合作协同育人系列教材之一,实践性较强,涵盖了高校相关专业方向的主要课程。本书作者具有企业开发实战经验和行业培训的经验,也为高校学生讲授相关的课程,理论结合实践。
|
內容簡介: |
本书主要从零基础读者的角度出发,通过简单易懂的语言讲解知识,内容图文并茂,知识点由浅入深,案例充足,让读者通过课后习题巩固所学知识点。全书共分为12章,内容主要包括Python环境搭建、Python变量命令规范、Python中的各类数据类型、流程控制语句、继承、多态、类与方法、文件的读写、文件的缓存、文件的编码、正则表达式、栈、堆、链表、树、查找算法、排序算法、递归算法和五子棋对战项目等。本书配有丰富的课后习题,能快速帮助读者提高编程水平,提升对问题的思考能力和解决能力。
|
關於作者: |
张毅恒。广州粤嵌通信科技股份有限公司人工智能学科负责人。系统架构师、高级工程师。5年多研发经验,8年多技术讲师经验。曾在纳斯达克上市公司任职,负责手机与平板电脑Android系统的移植工作;曾参与车联网系统的研发,负责整个系统的架构与搭建工作。从Linux系统移植、后台服务器程序开发,到Android应用开发、H5微信小程序,到机器学习与数据分析,都有丰富的实践和教学工作经验。
|
目錄:
|
第 1章 Python简介1
1.1 Python概述1
1.2 Python编程语言的特点1
1.3 Python2和Python3的区别2
1.4 搭建Python开发环境3
1.5 第 一个Python程序7
1.6 集成开发环境PyCharm8
1.7 习题16
第 2章 Python基础语法18
2.1 注释18
2.1.1 单行注释18
2.1.2 多行注释19
2.2 标识符19
2.3 关键字20
2.4 变量23
2.5 输入与输出25
2.5.1 等待用户输入input25
2.5.2 输出print25
2.6 运算符26
2.6.1 算术运算符26
2.6.2 赋值运算符27
2.6.3 关系运算符27
2.6.4 逻辑运算符27
2.6.5 位运算符28
2.6.6 成员运算符28
2.6.7 身份运算符28
2.6.8 三目运算符29
2.6.9 运算符的优先级29
2.7 习题30
第3章 Python数据类型31
3.1 数据类型概述31
3.2 数值型31
3.2.1 不同数值型之间的运算32
3.2.2 强制类型转换33
3.2.3 科学计数法36
3.2.4 常用数学运算37
3.2.5 分数与小数38
3.3 字符串39
3.3.1 索引40
3.3.2 访问字符串中的元素40
3.3.2 转义字符42
3.3.3 字符串格式化42
3.3.4 字符串相关的运算符44
3.3.5 用三引号描述字符串46
3.3.6 字符串常用的函数和方法46
3.4 列表47
3.4.1 访问列表中的元素47
3.4.2 往列表中添加元素49
3.4.3 从列表中删除元素51
3.4.4 初始化列表53
3.4.5 二维列表56
3.4.6 列表常用的函数和方法57
3.4.7 列表相关的运算符58
3.4.8 浅拷贝和深拷贝58
3.5 元组62
3.6 集合68
3.7 字典74
3.7.1 访问字典中的元素75
3.7.2 修改字典中的元素76
3.7.3 删除字典中的元素77
3.7.4 字典常用函数和方法78
3.7.5 遍历字典78
3.7.6 字典和列表的结合80
3.7.7 zip()函数81
3.8 习题81
第4章 条件语句和循环语句83
4.1 流程控制语句概述83
4.2 条件语句83
4.3 循环语句86
4.3.1 while循环86
4.3.2 for循环88
4.3.3 跳出循环91
4.3.4 迭代器93
4.3.5 enumerate()函数96
4.3.6 pass96
4.4 习题97
第5章 Python函数100
5.1 函数概述100
5.1.1 函数的定义101
5.1.2 函数的调用102
5.1.3 函数的说明102
5.2 函数参数与返回值103
5.2.1 给函数传递参数103
5.2.2 默认参数104
5.2.3 函数的返回值106
5.2.4 可变类型与不可变类型107
5.2.5 可变参数与关键字参数111
5.2.6 参数组合114
5.3 全局变量115
5.3.1 global全局变量115
5.3.2 nonlocal非局部变量118
5.4 匿名函数119
5.4.1 语法119
5.4.2 三元运算121
5.5 函数作为对象121
5.5.1 基本概念121
5.5.2 reduce()函数124
5.5.3 偏函数126
5.6 生成器127
5.7 闭包129
5.7.1 引入129
5.7.2 什么是闭包130
5.7.3 调用闭包函数131
5.7.4 闭包在内存中的状态133
5.7.5 闭包的作用135
5.8 装饰器136
5.8.1 引入136
5.8.2 装饰器原理141
5.8.3 多个装饰器145
5.8.4 装饰带参数的函数150
5.8.5 装饰有返回值的函数152
5.8.6 带有参数的装饰器154
5.9 习题155
第6章 Python面向对象160
6.1 面向对象思想160
6.2 类与对象163
6.3 属性164
6.4 方法167
6.5 __init__()170
6.6 __del__()171
6.7 __str__()173
6.8 私有174
6.9 继承177
6.9.1 继承的实现177
6.9.2 object183
6.9.3 多继承183
6.9.4 钻石继承185
6.9.5 MRO187
6.10 多态188
6.11 对象属性与类属性192
6.12 对象方法与类方法193
6.13 静态方法194
6.14 __new__()196
6.14.1 继承不可变的类型197
6.14.2 单例198
6.15 运算符重载201
6.16 property202
6.17 模块与导包203
6.18 类中自带的属性和方法206
6.19 习题209
第7章 异常处理213
7.1 异常概述213
7.2 异常处理213
7.3 多个except子句214
7.4 一个except子句捕获多个异常216
7.5 捕获异常对象216
7.6 捕获所有异常217
7.7 异常的else子句218
7.8 finally子句219
7.9 抛出异常220
7.10 自定义异常221
7.11 习题222
第8章 文件I O224
8.1 打开文件224
8.2 读文件227
8.3 写文件229
8.4 文件读写位置231
8.5 缓存233
8.6 with...as235
8.7 序列化与反序列化236
8.8 编码问题237
8.8.1 编码与解码237
8.8.2 ASCII编码238
8.8.3 GBK编码239
8.8.4 UTF-8编码239
8.8.5 URL编码240
8.9 习题241
第9章 正则表达式242
9.1 正则表达式概述242
9.2 常用正则函数242
9.2.1 match()函数242
9.2.2 search()函数243
9.2.3 group()函数245
9.2.4 sub()函数246
9.3 正则模式247
9.4 贪婪模式与非贪婪模式248
9.5 正则表达式常见应用249
9.5.1 匹配邮政编码249
9.5.2 匹配年龄250
9.5.3 匹配IP地址251
9.6 习题252
第 10章 数据结构255
10.1 数组255
10.2 栈255
10.3 队列259
10.4 链表268
10.5 树275
10.6 堆282
10.7 散列表288
10.8 图292
10.9 习题295
第 11章 算法298
11.1 查找算法298
11.1.1 顺序查找法298
11.1.2 二分查找法299
11.2 排序算法301
11.2.1 冒泡排序法301
11.2.2 选择排序法305
11.2.3 插入排序法309
11.2.4 希尔排序法313
11.2.5 快速排序法317
11.2.6 归并排序法320
11.2.7 堆排序法324
11.2.8 排序算法评价标准328
11.3 递归算法329
11.4 习题331
第 12章 项目开发与实现——五子棋334
12.1 游戏说明334
12.2 建立模型335
12.3 打印棋盘336
12.4 放置棋子338
12.5 计算机下棋策略342
12.6 读取用户下棋的位置344
12.7 判断赢棋条件346
12.8 程序主流程349
|
|