高等教育 > 计算机基础教育

Python程序开发案例教程(第2版)

书号:9787113309237 套系名称:应用型人才培养系列教材

作者:黑马程序员 出版日期:2024-07-01

定价:59.80 页码 / 开本:0 /16

策划编辑:翟玉峰 责任编辑:翟玉峰 彭立辉

适用专业:计算机基础教育 适用层次:高等教育

最新印刷时间:2024-12-01

资源下载
教学课件 教学素材
习题答案 教学案例
教学设计 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  •         本书是黑马程序员编著的应用型人才培养系列教材之一,以简洁的语言讲解Python编程的内容。全书共分17章,内容包括开启Python学习之旅、数字类型与字符串、流程控制、列表与元组、字典和集合、函数、类与面向对象、模块、文件与文件路径操作、错误和异常、正则表达式、进程和线程、网络编程、数据库编程、Django框架入门、Django核心组件详解,以及项目实战——天天生鲜。本书每章都配有大量典型的实例和教学资源,读者可以边学边练习,巩固所学知识,并在实践中提升动手开发能力。
           本书适合作为高等院校计算机及其他工科专业的教材,也可作为编程人员及自学者的辅助教材或自学参考书。
    
    
  •     Python作为一门多用途的高级编程语言,正处于持续蓬勃发展的阶段。如今,Python已经成为业界和学术界中最受欢迎的语言之一,它简洁易读、功能强大,具有丰富的库和工具生态系统,在数据科学、人工智能、Web开发等众多领域得到广泛应用。
            编写思路
           对于已步入编程领域的人而言,学习一门语言并不难,难的是如何将语言应用到实际开发之中。通过学习本书可帮助具有编程基础的人群快速掌握Python语言,并熟练应用Python进行应用开发。
          在内容结构设计上,本书延续第1版的编写思路每章采用“语法介绍+代码示例+实例练习”的模式,既有普适性介绍,又抓取要点、突出重点,同时提供充足实例,保证语法学习之余的实际应用;在知识配置上,本书涵盖Python基础语法、面向对象、正则表达式、进程和线程、网络编程、数据库编程以及Django框架。通过学习本书,读者可以掌握开发Web项目的基础知识,具备使用Django框架快速开发Web项目的能力。
          修订内容
          为了与行业发展保持同步,本书在第1版的基础上进行了修订。具体包括技术更新、内容优化和融入思政。首先根据Python技术的发展动向进行了技术更新,其次根据教师的需求和反馈对第1版内容和案例进行了优化,最后结合国家对教育行业的政策要求,增加了与思政教育相关的内容。
           修改的具体内容如下:
          (1)将Django框架拆解为两章,读者可以全面学习Django框架的核心知识。
          (2)删减图形用户界面编程一章,使图书精准定位Web开发基础用书行列。
          (3)将Python升级至Python 3.11.3版本,紧跟技术发展需求。
          (4)更新内置模块和数据库安装的内容,使读者接触更加实用的技能。
          (5)更新实例并调整实例顺序,以增强实例与知识点之间的联系。
          (6)案例深度自然地融入思政教育内容。
          本书内容
          本书在Windows上基于Python 3.11.3对Python语法及程序设计相关知识进行讲解,全书总共分17章,其中前10章介绍Python基础部分的内容,第11~14章介绍Python进阶部分的内容,第15~16章介绍Django框架部分的内容,第17章介绍项目实践部分的内容。
       Python基础部分:前10章主要围绕Python基础的核心知识进行讲解,包括基础语法、数字类型、字符串类型、流程控制、列表与元组、字典和集合、函数、面向对象编程、模块、文件操作技巧以及异常处理的应用。通过学习这些内容,读者可以建立起扎实的Python编程基础,能够编写从简单到复杂的Python程序。
       Python进阶部分:第11~14章深入探讨了Web开发方向的Python进阶知识,包括正则表达式、多任务编程的方式——进程和线程、网络编程以及数据库编程。通过学习,读者可掌握高级的编程技能,能够处理更加复杂的问题,编写出更加高效且可扩展的程序。
       Django框架部分:第15章首先介绍了Web开发的基础知识,包括HTTP、HTML、CSS、JavaScript、WSGI,然后简单地介绍了Django框架的入门知识,包括如何安装Django框架、创建Django项目与应用、配置文件以及Django架构;第16章主要围绕Django框架的核心组件进行讲解,包括路由系统、模型、模板和视图。通过学习这些章节,读者能够掌握Django框架的基本使用,能够使用Django框架开发简单的Web应用。
          项目实践部分:第17章通过实际项目案例——天天生鲜展示了Django框架在实际项目开发中的应用。通过逐步实现项目的各个模块和页面功能,读者可以深入理解Django框架的实际应用,并具备使用Django框架进行项目开发的能力。
    读者若不能完全理解教材中所讲知识,可登录博学谷平台,配合平台中的教学视频进行学习。此外读者在学习过程中,务必要勤于练习,确保真正获取所学知识。若在学习的过程中遇到无法解决的困难,建议读者不要纠结于此,继续往后学习,或可豁然开朗。
          致谢
          本教材的编写和整理工作由江苏传智播客教育科技股份有限公司完成,主要参与人员有高美云、孙东、王晓娟等,全体人员在近一年的编写过程中付出了很多辛勤的汗水,在此一并表示衷心的感谢。
          意见反馈
          尽管我们付出了最大的努力,但书中难免存在疏漏与不妥之处,欢迎各界专家和读者朋友们来信提出宝贵意见,我们将不胜感激。在阅读本书时,若发现任何问题或有不认同之处可以通过电子邮件与我们取得联系。请发送电子邮件至:itcast_book@vip.sina.com。
                                     
                                                           黑马程序员
                           2023年11月1日于北京
    
  • 第1章 开启Python学习之旅 1
    1.1 Python概述 1
    1.1.1 Python的特点 1
    1.1.2 Python的应用领域 2
    1.2 搭建Python开发环境 3
    1.2.1 Python解释器的安装 3
    1.2.2 PyCharm的安装与使用 6
    1.3 快速开发Python程序 12
    1.3.1 开发第一个Python程序 12
    1.3.2 良好的编程约定 13
    1.3.3 数据的表示——变量 14
    1.3.4 基本输入/输出 15
    1.4 实例1:打印购物小票 16
    1.5 实例2:打印功能菜单 16
    小结 16
    习题 17
    第2章 数字类型与字符串 18
    2.1 数字类型 18
    2.2 运算符 20
    2.2.1 算术运算符 20
    2.2.2 比较运算符 21
    2.2.3 赋值运算符 21
    2.2.4 逻辑运算符 22
    2.2.5 成员运算符 23
    2.2.6 位运算符 23
    2.2.7 运算符优先级 24
    2.3 经典实例 25
    2.3.1 实例1:计算BMI指数 25
    2.3.2 实例2:计算三角形的面积 25
    2.3.3 实例3:判断水仙花数 25
    2.4 字符串 25
    2.4.1 字符串的创建 25
    2.4.2 字符串的格式化 26
    2.4.3 字符串的常见操作 29
    2.4.4 字符串的索引与切片 31
    2.4.5 实例4:制作名片 32
    2.4.6 实例5:替换不良词语 32
    2.5 类型转换 33
    2.5.1 类型转换函数 33
    2.5.2 实例6:模拟超市收银抹零行为 34
    小结 34
    习题 34
    第3章 流程控制 36
    3.1 条件语句 36
    3.1.1 if语句 36
    3.1.2 if…else语句 37
    3.1.3 if…elif…else语句 38
    3.1.4 实例1:判断回文数 39
    3.1.5 实例2:奖金发放 39
    3.1.6 实例3:判断身体胖瘦程度 40
    3.2 条件嵌套 40
    3.2.1 条件嵌套的格式 40
    3.2.2 实例4:模拟乘客进站流程 41
    3.2.3 实例5:快递计费系统 41
    3.3 循环语句 42
    3.3.1 for语句 42
    3.3.2 实例6:数据加密 43
    3.3.3 实例7:逢七拍手游戏 43
    3.3.4 while语句 43
    3.3.5 实例8:登录系统账号检测 44
    3.4 循环嵌套 44
    3.4.1 while循环嵌套 44
    3.4.2 for循环嵌套 45
    3.4.3 实例9:九九乘法表 45
    3.5 跳转语句 46
    3.5.1 break语句 46
    3.5.2 continue语句 47
    3.5.3 实例10:猜数游戏 48
    小结 48
    习题 48
    第4章 列表与元组 50
    4.1 认识列表 50
    4.1.1 列表的创建方式 50
    4.1.2 访问列表元素 51
    4.1.3 实例1:刮刮乐 51
    4.2 列表的遍历和排序 52
    4.2.1 列表的遍历 52
    4.2.2 列表的排序 52
    4.2.3 实例2:商品价格区间排序 53
    4.3 添加、删除和修改列表元素 54
    4.3.1 添加列表元素 54
    4.3.2 删除列表元素 54
    4.3.3 修改列表元素 55
    4.3.4 实例3:好友管理系统 55
    4.4 嵌套列表 56
    4.4.1 嵌套列表的创建与访问 56
    4.4.2 实例4:随机分配办公室 57
    4.5 认识元组 57
    4.5.1 元组的创建方式 57
    4.5.2 访问元组元素 58
    4.5.3 实例5:中文数字对照表 59
    小结 59
    习题 60
    第5章 字典和集合 62
    5.1 认识字典 62
    5.1.1 字典的创建方式 62
    5.1.2 通过键访问字典 63
    5.1.3 实例1:单词识别 64
    5.2 字典的基本操作 64
    5.2.1 字典元素的添加和修改 64
    5.2.2 字典元素的删除 65
    5.2.3 字典元素的查询 66
    5.2.4 实例2:手机通讯录 67
    5.3 集合的创建方式 67
    5.4 集合操作与操作符 68
    5.4.1 集合元素的添加、删除和清空 68
    5.4.2 集合类型的操作符 70
    5.4.3 实例3:生词本 72
    小结 72
    习题 72
    第6章 函数 74
    6.1 函数的定义与调用 74
    6.1.1 函数的定义 74
    6.1.2 函数的调用 75
    6.1.3 实例1:计算器 76
    6.2 函数的参数传递 76
    6.2.1 位置参数传递 76
    6.2.2 关键字参数传递 77
    6.2.3 默认参数传递 77
    6.2.4 参数打包传递 78
    6.2.5 参数解包传递 78
    6.2.6 实例2:商品折扣计算 79
    6.3 变量作用域 79
    6.3.1 局部变量 79
    6.3.2 全局变量 80
    6.3.3 实例3:学生信息管理系统 81
    6.4 函数的特殊形式 81
    6.4.1 匿名函数 81
    6.4.2 实例4:商品销量排序 82
    6.4.3 递归函数 82
    6.4.4 实例5:失之毫厘,谬以千里 83
    6.5 常用的内置函数 84
    小结 85
    习题 85
    第7章 类与面向对象 87
    7.1 面向对象 87
    7.1.1 面向对象概述 87
    7.1.2 面向对象的基本概念 89
    7.2 类与对象 90
    7.2.1 类与对象的关系 90
    7.2.2 类的定义 91
    7.2.3 对象的创建与使用 91
    7.2.4 访问限制 92
    7.3 构造方法 93
    7.4 类方法和静态方法 94
    7.4.1 类方法 94
    7.4.2 静态方法 96
    7.5 实例1:航天器信息查询工具 96
    7.6 继承 97
    7.6.1 单继承 97
    7.6.2 多继承 98
    7.6.3 方法的重写 99
    7.6.4 super()函数 99
    7.7 实例2:人机猜拳游戏 100
    7.8 多态 100
    小结 101
    习题 101
    第8章 模块 103
    8.1 模块概述 103
    8.1.1 模块的概念 103
    8.1.2 模块的导入方式 104
    8.1.3 常见的内置模块 105
    8.2 自定义模块 109
    8.3 模块的导入特性 111
    8.3.1 _ _all__变量 111
    8.3.2 __name__变量 112
    8.4 Python的包 112
    8.4.1 包的结构 112
    8.4.2 包的导入 113
    8.5 第三方模块的下载与安装 114
    8.6 实例1:验证码 114
    8.7 实例2:文本进度条 115
    8.8 实例3:高考倒计时器 115
    小结 115
    习题 116
    第9章 文件与文件路径操作 117
    9.1 文件的打开和关闭 117
    9.1.1 打开文件 117
    9.1.2 关闭文件 119
    9.2 从文件中读取数据 119
    9.2.1 读取文件 119
    9.2.2 实例1:身份证归属地查询 121
    9.3 向文件写入数据 121
    9.3.1 写入文件 121
    9.3.2 实例2:通讯录 122
    9.4 文件的定位读/写 122
    9.5 文件的备份与重命名 123
    9.5.1 文件的备份 123
    9.5.2 文件的重命名 124
    9.6 目录操作 124
    9.6.1 创建目录 124
    9.6.2 删除目录 125
    9.6.3 获取目录的文件列表 125
    9.7 文件路径操作 126
    9.7.1 相对路径与绝对路径 126
    9.7.2 获取当前路径 126
    9.7.3 检测路径的有效性 126
    9.7.4 路径的拼接 127
    9.8 实例3:用户登录 128
    小结 128
    习题 128
    第10章 错误和异常 130
    10.1 错误和异常概述 130
    10.1.1 认识错误和异常 130
    10.1.2 异常的类型 131
    10.2 捕获与处理异常 132
    10.2.1 try…except语句 132
    10.2.2 捕获异常信息 135
    10.2.3 else子句 135
    10.2.4 finally子句 136
    10.3 抛出异常 136
    10.3.1 raise语句 136
    10.3.2 异常的传递 138
    10.3.3 assert断言语句 139
    10.4 自定义异常 139
    10.5 with语句 140
    10.6 实例:身份归属地查询 141
    小结 141
    习题 141
    第11章 正则表达式 143
    11.1 基础知识 143
    11.1.1 元字符 143
    11.1.2 预定义字符集 146
    11.2 re模块 146
    11.3 预编译 147
    11.4 匹配与搜索 148
    11.4.1 使用match()函数进行匹配 148
    11.4.2 使用search()函数进行匹配 149
    11.4.3 实例1:手机号运营商 150
    11.5 匹配对象 150
    11.6 全文匹配 151
    11.6.1 findall()函数 151
    11.6.2 finditer()函数 152
    11.7 检索替换 152
    11.8 实例2:电影信息提取 153
    11.9 文本分割 153
    11.10 贪婪匹配 154
    11.11 实例3:用户注册验证 155
    小结 155
    习题 155
    第12章 进程和线程 157
    12.1 进程概述 157
    12.1.1 进程的概念 157
    12.1.2 进程的状态 158
    12.1.3 进程相关的概念 159
    12.2 进程的创建方式 160
    12.2.1 通过fork()函数创建进程 160
    12.2.2 通过Process类创建进程 162
    12.2.3 通过Pool类批量创建进程 164
    12.3 进程间通信 167
    12.4 线程的概念 168
    12.5 线程的基本操作 169
    12.5.1 线程的创建和启动 169
    12.5.2 线程的阻塞 171
    12.6 线程锁 172
    12.6.1 线程锁概述 172
    12.6.2 互斥锁 172
    12.6.3 死锁 175
    12.6.4 可重入锁 176
    12.7 线程同步 178
    12.7.1 线程同步概述 178
    12.7.2 通过Condition类实现线程同步 178
    12.7.3 通过Queue类实现线程同步 181
    12.8 实例:生产者与消费者模式 183
    小结 183
    习题 184
    第13章 网络编程 185
    13.1 网络概述 185
    13.1.1 协议与体系结构 186
    13.1.2 数据传输流程 187
    13.1.3 网络架构 . 189
    13.1.4 IP地址和端口号 189
    13.2 socket网络编程基础 190
    13.2.1 socket套接字 190
    13.2.2 socket通信流程 191
    13.2.3 socket内置方法 192
    13.2.4 实例1:扫描开放端口 195
    13.3 基于UDP的网络聊天室 195
    13.4 基于TCP的数据转换 197
    13.5 实例2:TCP文件下载 199
    13.6 TCP并发服务器 199
    13.6.1 单进程非阻塞服务器 200
    13.6.2 多进程并发服务器 203
    13.6.3 多线程并发服务器 204
    小结 205
    习题 205
    第14章 数据库编程 . 207
    14.1 数据库基础知识 207
    14.1.1 数据库概述 207
    14.1.2 数据库的分类 208
    14.1.3 数据库的核心要素 210
    14.2 MySQL与Python交互 211
    14.2.1 下载和安装MySQL 211
    14.2.2 安装pymysql 216
    14.2.3 pymysql的常用对象 216
    14.2.4 pymysql的基本使用 219
    14.3 MongoDB与Python交互 221
    14.3.1 下载和安装MongoDB 221
    14.3.2 安装pymongo 224
    14.3.3 pymongo常用对象 225
    14.3.4 pymongo的基本使用 27
    14.4 Redis与Python交互 228
    14.4.1 下载和安装Redis 228
    14.4.2 安装redis模块 230
    14.4.3 redis常用对象 231
    14.4.4 redis的基本使用 . 232
    14.5 实例:用户注册与登录 233
    小结 234
    习题 234
    第15章 Django框架入门 236
    15.1 Web开发基础知识 236
    15.1.1 HTTP协议 237
    15.1.2 HTML简介 240
    15.1.3 CSS简介 240
    15.1.4 JavaScript简介 241
    15.1.5 WSGI规范 242
    15.2 初识Django框架 243
    15.2.1 Django框架的发展史 243
    15.2.2 Django框架的优点 244
    15.3 搭建Django环境 245
    15.3.1 选择Django版本 245
    15.3.2 创建隔离的Python环境 246
    15.3.3 安装Django框架 247
    15.4 创建第一个Django项目 248
    15.4.1 创建Django项目 248
    15.4.2 运行开发服务器 249
    15.4.3 Django项目配置 250
    15.4.4 在项目中创建应用 251
    15.5 Django架构之MTV 253
    小结 254
    习题 254
    第16章 Django核心组件详解 256
    16.1 路由系统 256
    16.1.1 路由系统简介 256
    16.1.2 路由转换器 258
    16.1.3 路由分发 261
    16.1.4 向视图传递额外参数 262
    16.1.5 反向解析URL 263
    16.2 模型 264
    16.2.1 模型简介 264
    16.2.2 模型的字段 267
    16.2.3 数据的增删改查 269
    16.3 模板 272
    16.3.1 模板简介 272
    16.3.2 模板语法 275
    16.4 视图 . 279
    16.4.1 视图简介 279
    16.4.2 请求对象 280
    16.4.3 响应对象 281
    16.4.4 生成响应 283
    16.4.5 视图类 284
    16.4.6 分页 . 285
    16.5 实例:用户登录 .288
    小结 289
    习题 289
    第17章 项目实战——天天生鲜 291
    17.1 项目页面展示 291
    17.2 项目需求分析 295
    17.2.1 模块与功能分析 295
    17.2.2 数据库设计 296
    17.3 前期准备工作 296
    17.3.1 创建项目 296
    17.3.2 定义模型类 298
    17.3.3 迁移数据库 .299
    17.3.4 配置静态文件 300
    17.4 首页功能实现 301
    17.4.1 创建视图函数 301
    17.4.2 创建模板文件 302
    17.4.3 配置路由 304
    17.5 商品详情页面功能实现 304
    17.5.1 创建视图函数 304
    17.5.2 实现加入购物车功能 305
    17.5.3 创建模板文件 306
    17.5.4 配置路由 307
    17.6 商品分类页面功能实现 307
    17.6.1 创建视图函数 307
    17.6.2 创建模板文件 308
    17.6.3 配置路由 310
    17.7 购物车页面功能实现 310
    17.7.1 创建视图函数 310
    17.7.2 实现删除商品的功能 311
    17.7.3 创建模板文件 312
    17.7.4 配置路由 313
    17.8 订单提交页面功能实现 313
    17.8.1 创建视图函数 313
    17.8.2 实现提交订单功能 314
    17.8.3 创建模板文件 315
    17.8.4 配置路由 316
    17.9 订单提交成功页面功能实现 316
    17.9.1 创建视图函数 316
    17.9.2 创建模板文件 317
    17.9.3 配置路由 318
    小结 318
    
  •        江苏传智播客教育科技股份有限公司(简称“传智教育”)作为我国第一个实现A股IPO上市的教育企业,是一家培养高精尖数字化专业人才的公司,主要培养人工智能、大数据、智能制造、软件开发、区块链、数据分析、网络营销、新媒体等领域的人才。“黑马程序员”是传智播客旗下高端IT教育品牌。
    
  • 全面讲解Python开发的核心知识
    
    配有大量典型实例和项目实战案例
    
    可下载所有实例的分析、实现和源代码
    
    
    ?