Python程序设计——从基础到开发 / 21世纪高等学校计算机应用技术规划教材
¥49.00定价
作者: 夏敏捷、杨关等
出版时间:2017年7月
出版社:清华大学出版社
- 清华大学出版社
- 9787302472551
- 1-1
- 20537
- 16开
- 2017年7月
- 工学
- 计算机科学与技术
- TP311.56
- 计算机
- 本专科、高职高专
内容简介
本书以Python 3.5为编程环境,从基本的程序设计思想入手,逐步展开Python语言教学,是一本面向广大编程学习者的程序设计类图书。基础篇主要讲解Python的基础语法知识、控制语句、函数、文件、面向对象编程基础、Tkinter图形界面设计、网络编程和多线程、Python数据库应用等知识,并以小游戏案例作为各章的阶段性任务。开发篇综合应用前面介绍的技术,开发经典的大家耳熟能详的游戏,例如”连连看””推箱子””中国象棋””网络五子棋””两人麻将””扫雷”和”飞机大战”游戏等。本书*的特色在于以游戏开发案例为导向,让读者对枯燥的Python语言学习充满乐趣,在开发过程中,不知不觉地学会这些枯燥的技术。书中不仅列出了完整的代码,同时对所有的源代码进行了非常详细的解释,做到通俗易懂,图文并茂。
目录
目录
基础篇
第1章Python语言介绍
1.1Python语言简介
1.2安装与配置Python环境
1.2.1安装Python
1.2.2运行Python
1.3Python开发环境IDLE简介
1.3.1IDLE的启动
1.3.2利用IDLE创建Python程序
1.3.3IDLE常用编辑功能
1.3.4在IDLE中运行和调试Python程序
1.4Python基本输入/输出
1.4.1Python基本输入
1.4.2Python基本输出
1.5Python代码规范
1.6使用帮助
1.7习题
第2章Python语法基础
2.1Python数据类型
2.1.1数值类型
2.1.2字符串
2.1.3布尔类型
2.1.4空值
2.1.5Python数字类型转换
2.2常量和变量
2.2.1变量
2.2.2常量
2.3运算符与表达式
2.3.1运算符
2.3.2表达式
2.4序列数据结构
2.4.1列表
2.4.2元组
2.4.3字典
2.4.4集合
2.5习题
第3章Python控制语句
3.1选择结构
3.1.1if语句
3.1.2if…else语句
3.1.3if…elif…else语句
3.1.4pass语句
3.2循环结构
3.2.1while语句
3.2.2for语句
3.2.3continue和break语句
3.2.4循环嵌套
3.3常用算法及应用实例
3.3.1累加与累乘
3.3.2求最大数和最小数
3.3.3枚举法
3.3.4递推与迭代
3.4游戏初步——猜单词游戏
3.5习题
第4章Python函数与模块
4.1函数的定义和使用
4.1.1函数的定义
4.1.2函数的使用
4.1.3Lambda表达式
4.1.4函数的返回值
4.2函数参数
4.2.1函数形参和实参的区别
4.2.2参数的传递
4.2.3函数参数的类型
4.2.4变量的作用域
4.3闭包和函数的递归调用
4.3.1闭包
4.3.2函数的递归调用
4.4内置函数
4.4.1数学运算函数
4.4.2集合操作函数
4.4.3字符串函数
4.4.4反射函数
4.4.5I/O函数
4.5模块
4.5.1import导入模块
4.5.2定义自己的模块
4.5.3time模块
4.5.4日历(calendar)模块
4.5.5日期时间(datetime)模块
4.5.6random模块
4.5.7math模块和cmath模块
4.6游戏初步
4.7习题
第5章Python文件的使用
5.1文件
5.2文件的访问
5.2.1打开(建立)文件
5.2.2读取文本文件
5.2.3写文本文件
5.2.4文件内移动
5.2.5文件的关闭
5.2.6二进制文件的读/写
5.3文件夹的操作
5.3.1当前工作目录
5.3.2目录操作
5.3.3文件操作
5.4文件应用案例——游戏地图存储
5.4.1地图写入文件
5.4.2从地图文件读取信息
5.5习题
第6章面向对象程序设计
6.1面向对象程序设计基础
6.2类和对象
6.2.1定义和使用类
6.2.2构造函数
6.2.3析构函数
6.2.4实例属性和类属性
6.2.5私有成员与公有成员
6.2.6方法
6.3类的继承和多态
6.3.1类的继承
6.3.2类的多继承
6.3.3方法重写
6.3.4多态
6.3.5运算符重载
6.4面向对象应用案例——扑克牌类设计
6.4.1关键技术——random模块
6.4.2程序设计的思路
6.5习题
第7章Tkinter图形界面设计
7.1Python图形开发库
7.1.1创建Windows窗口
7.1.2几何布局管理器
7.2常用Tkinter组件的使用
7.2.1Tkinter组件
7.2.2标准属性
7.2.3Label标签组件
7.2.4Button按钮组件
7.2.5单行文本框Entry和多行文本框Text
7.2.6列表框组件Listbox
7.2.7单选按钮Radiobutton和复选框Checkbutton
7.2.8菜单组件Menu
7.2.9对话框
7.2.10消息窗口(消息框)
7.2.11Frame框架组件
7.2.12Scrollbar滚动条组件
7.3图形绘制
7.3.1Canvas画布组件
7.3.2Canvas上的图形对象
7.4Tkinter字体
7.4.1通过元组表示字体
7.4.2通过Font对象表示字体
7.5Python事件处理
7.5.1事件类型
7.5.2事件绑定
7.5.3事件处理函数
7.6图形界面程序设计的应用
7.6.1开发猜数字游戏
7.6.2扑克牌发牌程序窗体图形版
7.7习题
第8章Python数据库应用
8.1数据库基础
8.1.1数据库概念
8.1.2关系型数据库
8.1.3数据库和Python接口程序
8.2结构化查询语言SQL
8.2.1数据表的建立(CREATE TABLE)和删除(DROP)
8.2.2查询语句SELECT
8.2.3添加记录语句INSERT INTO
8.2.4更新语句UPDATE
8.2.5删除记录语句DELETE
8.3SQLite数据库简介
8.3.1SQLite数据库
8.3.2SQLite3的数据类型
8.3.3SQLite3的函数
8.3.4SQLite3的模块
8.4Python的SQLite3数据库编程
8.4.1访问数据库的步骤
8.4.2创建数据库和表
8.4.3数据库的插入、更新和删除操作
8.4.4数据库表的查询操作
8.4.5数据库使用实例
8.5Python数据库应用案例——智力问答游戏
8.6习题
第9章网络编程和多线程
9.1网络编程基础
9.1.1互联网TCP/IP协议
9.1.2IP协议
9.1.3TCP和UDP协议
9.1.4端口
9.1.5Socket
9.2TCP编程
9.2.1TCP客户端编程
9.2.2TCP服务器端编程
9.3UDP编程
9.4多线程编程
9.4.1进程和线程
9.4.2创建线程
9.4.3线程同步
9.4.4定时器Timer
9.5网络编程案例——Python在线聊天程序
9.5.1在线聊天程序服务器端
9.5.2在线聊天程序客户端
9.6习题
开发篇
第10章连连看游戏
10.1连连看游戏介绍
10.2程序设计的思路
10.3程序设计的步骤
第11章推箱子游戏
11.1推箱子游戏介绍
11.2程序设计的思路
11.3关键技术
11.4程序设计的步骤
第12章两人麻将游戏
12.1麻将游戏介绍
12.2两人麻将游戏设计的思路
12.2.1素材图片
12.2.2游戏逻辑实现
12.2.3碰吃牌判断
12.2.4和牌算法
12.2.5实现计算机智能出牌
12.3关键技术
12.3.1声音播放
12.3.2返回对应位置的组件
12.3.3对保存麻将牌的列表排序
12.4两人麻将游戏设计的步骤
12.4.1麻将牌类设计
12.4.2设计游戏主程序
第13章单机版五子棋
13.1单机版五子棋游戏简介
13.2五子棋设计思想
13.3关键技术
13.4程序设计的步骤
第14章网络五子棋
14.1网络五子棋游戏简介
14.2通信协议
14.3服务器端程序设计的步骤
14.4客户端程序设计的步骤
第15章扫雷游戏
15.1游戏介绍
15.2程序设计的思路
15.3关键技术
15.4程序设计的步骤
第16章中国象棋
16.1中国象棋介绍
16.2关键技术
16.3中国象棋设计思路
16.4中国象棋实现的步骤
第17章21点扑克牌游戏
17.121点扑克牌游戏介绍
17.2关键技术
17.3程序设计的步骤
第18章华容道游戏
18.1华容道游戏介绍
18.2华容道游戏设计思路
18.3程序设计的步骤
提高篇
第19章基于Pygame游戏设计
19.1Pygame基础知识
19.2Pygame的使用
19.2.1Pygame开发游戏的主要流程
19.2.2Pygame的图像图形绘制
19.2.3Pygame的键盘和鼠标事件的处理
19.2.4Pygame的字体使用
19.2.5Pygame的声音播放
19.2.6Pygame的精灵使用
19.3基于Pygame设计贪吃蛇游戏
19.4基于Pygame设计飞机大战游戏
19.4.1游戏角色
19.4.2游戏界面显示
19.4.3游戏逻辑实现
参考文献
基础篇
第1章Python语言介绍
1.1Python语言简介
1.2安装与配置Python环境
1.2.1安装Python
1.2.2运行Python
1.3Python开发环境IDLE简介
1.3.1IDLE的启动
1.3.2利用IDLE创建Python程序
1.3.3IDLE常用编辑功能
1.3.4在IDLE中运行和调试Python程序
1.4Python基本输入/输出
1.4.1Python基本输入
1.4.2Python基本输出
1.5Python代码规范
1.6使用帮助
1.7习题
第2章Python语法基础
2.1Python数据类型
2.1.1数值类型
2.1.2字符串
2.1.3布尔类型
2.1.4空值
2.1.5Python数字类型转换
2.2常量和变量
2.2.1变量
2.2.2常量
2.3运算符与表达式
2.3.1运算符
2.3.2表达式
2.4序列数据结构
2.4.1列表
2.4.2元组
2.4.3字典
2.4.4集合
2.5习题
第3章Python控制语句
3.1选择结构
3.1.1if语句
3.1.2if…else语句
3.1.3if…elif…else语句
3.1.4pass语句
3.2循环结构
3.2.1while语句
3.2.2for语句
3.2.3continue和break语句
3.2.4循环嵌套
3.3常用算法及应用实例
3.3.1累加与累乘
3.3.2求最大数和最小数
3.3.3枚举法
3.3.4递推与迭代
3.4游戏初步——猜单词游戏
3.5习题
第4章Python函数与模块
4.1函数的定义和使用
4.1.1函数的定义
4.1.2函数的使用
4.1.3Lambda表达式
4.1.4函数的返回值
4.2函数参数
4.2.1函数形参和实参的区别
4.2.2参数的传递
4.2.3函数参数的类型
4.2.4变量的作用域
4.3闭包和函数的递归调用
4.3.1闭包
4.3.2函数的递归调用
4.4内置函数
4.4.1数学运算函数
4.4.2集合操作函数
4.4.3字符串函数
4.4.4反射函数
4.4.5I/O函数
4.5模块
4.5.1import导入模块
4.5.2定义自己的模块
4.5.3time模块
4.5.4日历(calendar)模块
4.5.5日期时间(datetime)模块
4.5.6random模块
4.5.7math模块和cmath模块
4.6游戏初步
4.7习题
第5章Python文件的使用
5.1文件
5.2文件的访问
5.2.1打开(建立)文件
5.2.2读取文本文件
5.2.3写文本文件
5.2.4文件内移动
5.2.5文件的关闭
5.2.6二进制文件的读/写
5.3文件夹的操作
5.3.1当前工作目录
5.3.2目录操作
5.3.3文件操作
5.4文件应用案例——游戏地图存储
5.4.1地图写入文件
5.4.2从地图文件读取信息
5.5习题
第6章面向对象程序设计
6.1面向对象程序设计基础
6.2类和对象
6.2.1定义和使用类
6.2.2构造函数
6.2.3析构函数
6.2.4实例属性和类属性
6.2.5私有成员与公有成员
6.2.6方法
6.3类的继承和多态
6.3.1类的继承
6.3.2类的多继承
6.3.3方法重写
6.3.4多态
6.3.5运算符重载
6.4面向对象应用案例——扑克牌类设计
6.4.1关键技术——random模块
6.4.2程序设计的思路
6.5习题
第7章Tkinter图形界面设计
7.1Python图形开发库
7.1.1创建Windows窗口
7.1.2几何布局管理器
7.2常用Tkinter组件的使用
7.2.1Tkinter组件
7.2.2标准属性
7.2.3Label标签组件
7.2.4Button按钮组件
7.2.5单行文本框Entry和多行文本框Text
7.2.6列表框组件Listbox
7.2.7单选按钮Radiobutton和复选框Checkbutton
7.2.8菜单组件Menu
7.2.9对话框
7.2.10消息窗口(消息框)
7.2.11Frame框架组件
7.2.12Scrollbar滚动条组件
7.3图形绘制
7.3.1Canvas画布组件
7.3.2Canvas上的图形对象
7.4Tkinter字体
7.4.1通过元组表示字体
7.4.2通过Font对象表示字体
7.5Python事件处理
7.5.1事件类型
7.5.2事件绑定
7.5.3事件处理函数
7.6图形界面程序设计的应用
7.6.1开发猜数字游戏
7.6.2扑克牌发牌程序窗体图形版
7.7习题
第8章Python数据库应用
8.1数据库基础
8.1.1数据库概念
8.1.2关系型数据库
8.1.3数据库和Python接口程序
8.2结构化查询语言SQL
8.2.1数据表的建立(CREATE TABLE)和删除(DROP)
8.2.2查询语句SELECT
8.2.3添加记录语句INSERT INTO
8.2.4更新语句UPDATE
8.2.5删除记录语句DELETE
8.3SQLite数据库简介
8.3.1SQLite数据库
8.3.2SQLite3的数据类型
8.3.3SQLite3的函数
8.3.4SQLite3的模块
8.4Python的SQLite3数据库编程
8.4.1访问数据库的步骤
8.4.2创建数据库和表
8.4.3数据库的插入、更新和删除操作
8.4.4数据库表的查询操作
8.4.5数据库使用实例
8.5Python数据库应用案例——智力问答游戏
8.6习题
第9章网络编程和多线程
9.1网络编程基础
9.1.1互联网TCP/IP协议
9.1.2IP协议
9.1.3TCP和UDP协议
9.1.4端口
9.1.5Socket
9.2TCP编程
9.2.1TCP客户端编程
9.2.2TCP服务器端编程
9.3UDP编程
9.4多线程编程
9.4.1进程和线程
9.4.2创建线程
9.4.3线程同步
9.4.4定时器Timer
9.5网络编程案例——Python在线聊天程序
9.5.1在线聊天程序服务器端
9.5.2在线聊天程序客户端
9.6习题
开发篇
第10章连连看游戏
10.1连连看游戏介绍
10.2程序设计的思路
10.3程序设计的步骤
第11章推箱子游戏
11.1推箱子游戏介绍
11.2程序设计的思路
11.3关键技术
11.4程序设计的步骤
第12章两人麻将游戏
12.1麻将游戏介绍
12.2两人麻将游戏设计的思路
12.2.1素材图片
12.2.2游戏逻辑实现
12.2.3碰吃牌判断
12.2.4和牌算法
12.2.5实现计算机智能出牌
12.3关键技术
12.3.1声音播放
12.3.2返回对应位置的组件
12.3.3对保存麻将牌的列表排序
12.4两人麻将游戏设计的步骤
12.4.1麻将牌类设计
12.4.2设计游戏主程序
第13章单机版五子棋
13.1单机版五子棋游戏简介
13.2五子棋设计思想
13.3关键技术
13.4程序设计的步骤
第14章网络五子棋
14.1网络五子棋游戏简介
14.2通信协议
14.3服务器端程序设计的步骤
14.4客户端程序设计的步骤
第15章扫雷游戏
15.1游戏介绍
15.2程序设计的思路
15.3关键技术
15.4程序设计的步骤
第16章中国象棋
16.1中国象棋介绍
16.2关键技术
16.3中国象棋设计思路
16.4中国象棋实现的步骤
第17章21点扑克牌游戏
17.121点扑克牌游戏介绍
17.2关键技术
17.3程序设计的步骤
第18章华容道游戏
18.1华容道游戏介绍
18.2华容道游戏设计思路
18.3程序设计的步骤
提高篇
第19章基于Pygame游戏设计
19.1Pygame基础知识
19.2Pygame的使用
19.2.1Pygame开发游戏的主要流程
19.2.2Pygame的图像图形绘制
19.2.3Pygame的键盘和鼠标事件的处理
19.2.4Pygame的字体使用
19.2.5Pygame的声音播放
19.2.6Pygame的精灵使用
19.3基于Pygame设计贪吃蛇游戏
19.4基于Pygame设计飞机大战游戏
19.4.1游戏角色
19.4.2游戏界面显示
19.4.3游戏逻辑实现
参考文献