新書推薦:
《
画艺循谱:晚明的画谱与消闲
》
售價:HK$
143.4
《
新民说·现实政治史:从马基雅维利到基辛格
》
售價:HK$
99.7
《
宽容是件奢侈品(人生360度·一分钟经典故事)
》
售價:HK$
44.6
《
甲骨拼合六集
》
售價:HK$
333.8
《
视觉美食家:商业摄影实战与创意解析
》
售價:HK$
132.2
《
中国经济发展的新阶段:机会与选择
》
售價:HK$
99.7
《
DK月季玫瑰百科
》
售價:HK$
210.6
《
为你想要的生活
》
售價:HK$
66.1
|
編輯推薦: |
(1)一线教师打造的Python 3.5入门与进阶图书? (2)每章知识点都配有相应的小游戏案例来巩固学习效果? (3)耳熟能详的经典游戏案例让读者对枯燥的Python语言学习充满乐趣。? (4)本书课件和配套资料请到清华大学出版社网站本书页面下载。
|
內容簡介: |
本书以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.2ifelse语句
3.1.3ifelifelse语句
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.5IO函数
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互联网TCPIP协议
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游戏逻辑实现
参考文献
|
內容試閱:
|
前言
自从20世纪90年代初Python语言诞生至今,它逐渐被广泛应用于处理系统管理任务和科学计算,是最受欢迎的程序设计语言之一。编程是工程专业学生学习的重要内容。除此之外,学习编程还是了解计算机科学本质的方法之一。Python是新兴程序设计语言,是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python语言简洁、易读、可扩展,在国外用Python做科学计算的研究机构日益增多。最近几年,随着社会需求逐渐增加,许多高校纷纷采用Python来教授程序设计课程。例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。本书作者都长期从事程序设计语言的教学与应用开发,在长期的工作实践中,积累了丰富的经验,了解学习编程需要什么样的书,如何才能提高Python开发能力,如何以最少的时间投入得到最快的实际应用。本书基础篇包含第1~9章,主要讲解Python的基础知识、面向对象编程基础、Tkinter图形界面设计、网络编程和多线程、Python数据库应用等知识,每章最后都有应用本章知识点的游戏案例。开发篇含第10~18章,综合应用前面技术,开发经典的大家耳熟能详的游戏,比如连连看推箱子中国象棋两人麻将扫雷游戏华容道网络五子棋等。第19章为提高篇讲解基于Pygame游戏设计的基本知识,并应用Pygame开发贪吃蛇和飞机大战游戏案例。本书特色(1) Python 程序设计涉及的范围非常广泛,本书内容编排并不求全、求深,而是考虑零基础读者的接受能力,语言语法介绍以够用、实用和应用为原则,选择Python 中必备、实用的知识进行讲解。强化程序思维能力培养。(2) 游戏案例选取贴近生活,有助于提高学习兴趣。(3) 开发篇中每款游戏案例均提供详细的设计思路、关键技术分析以及具体的解决步骤方案。每一个游戏实例都是活的、实用的Python编程实例。需要说明的是学习编程是一个实践的过程,而不仅仅是看书、看资料,亲自动手编写、调试程序才是至关重要的。通过实际的编程以及积极的思考,读者可以很快积累掌握许多宝贵的编程经验,这些经验对开发者尤其显得不可或缺。本书由中原工学院夏敏捷和杨关主持编写。杨关(中原工学院)编写第1、2章,张慎武(中原工学院)编写第3、11章,孔梦荣(中原工学院)编写第4章,王琳(中原工学院)编写第5章,宋宝卫(郑州轻工业学院)编写第6、7章,周雪燕(中原工学院)编写第8章,王诤(中原工学院)编写第9、10章,张锦歌(河南工业大学)编写第12章,高丽平(中原工学院)编写第15、16章,张慧档(河南工业大学)编写第19章,其余章节由夏敏捷编写。在本书的编写过程中,为确保内容的正确性,参阅了很多资料,并且得到了中原工学院计算机学院郑秋生教授和资深Web程序员的支持,在此谨向他们表示衷心的感谢。本书的学习资源可在清华大学出版社网站本书页面下载。由于编者水平有限,书中难免有错,敬请广大读者批评指正,在此表示感谢。愿意与作者进行交流的读者请与作者联系,Email: xmj@zut.edu.cn。
夏敏捷
2017年1月
目录
第5章Python文件的使用
在程序运行时,数据保存在内存的变量里。内存中的数据在程序结束或关机后就会消失。如果想要在下次开机运行程序时还想使用同样的数据,就需要把数据存储在不易失的存储介质中,比如硬盘、光盘或U盘里。不易失存储介质上的数据保存在以存储路径命名的文件中。通过读写文件,程序就可以在运行时保存数据。在本章中,要学习使用Pathon在磁盘上创建、读写以及关闭文件。本章只讲述基本的的文件操作函数,更多函数请参考Python标准文档。5.1文件简单地说,文件是由字节组成的信息,在逻辑上具有完整意义,通常在磁盘上永久保存。Windows系统的数据文件按照编码方式分为两大类,文本文件和二进制文件。文本文件可以处理各种语言所需的字符,只包含基本文本字符,不包括诸如字体、字号、颜色等信息。它可以在文本编辑器和浏览器中显示。即在任何情况下,文本文件都是可读的。使用其他编码方式的文件即二进制文件,如Word文档、PDF、图像和可执行程序等。如果用文本编辑器打开一个JPG文件或Word文档,会看到一堆乱码,如图51所示。也就是说,每一种二进制文件都需要自己的处理程序才能打开并操作。
图51文本编辑器Notepad打开JPG文件运行效果
在本章中,重点学习文本文件的操作。当然二进制文件的处理也可以使用Python提供的模块进行处理。5.2文件的访问对文件的访问是指对文件进行读写操作。使用文件跟平时生活中使用记事本很相似。我们使用记事本时,需要先打开本子,使用后要合上它。打开记事本后,既可以读取信息,也可以向本子里写。不管哪种情况,都需要知道在哪里进行读写。我们在记事本中既可以一页页从头到尾地读也可以直接跳转到所需要的地方。使用文件工作也是一样。在Python中对文件的操作通常按照以下三个步骤进行:① 使用open函数打开或建立文件,返回一个file对象。② 使用file对象的读写方法对文件进行读写操作。其中,将数据从外存传输到内存的过程称为读操作,将数据从内存传输到外存的过程称为写操作。③ 使用file对象的close方法关闭文件。5.2.1打开建立文件在Python中要访问文件,必须打开Python Shell与磁盘上文件之间的连接。当使用open()函数打开或建立文件时,会建立文件和使用它的程序之间的连接,并返回代表连接的文件对象。通过文件对象,就可以在文件所在磁盘和程序之间传递文件内容,执行文件上所有后续操作。文件对象有时也称为文件描述符或文件流。当建立了Python程序和文件之间的连接后,就创建了流数据,如图52所示。通常程序使用输入流读出数据,使用输出流写入数据,就好像数据流入到程序并从程序中流出。打开文件后,才能读或写或读并且写文件内容。
图52输入输出流
open函数用来打开文件。open函数需要一个字符串路径,表明希望打开文件,并返回一个文件对象。语法如下:
fileobj=openfilename[,mode[,buffering]]
其中,fileobj是open函数返回的文件对象。参数filename文件名是必写参数,它既可以是绝对路径,也可以是相对路径。模式mode和缓冲buffering可选。mode是指明文件类型和操作的字符串,可以使用的值如表51所示。
表51open函数中mode参数常用值
值描述''r''读模式,如果文件不存在,则发生异常''w ''写模式,如果文件不存在,则创建文件再打开; 如果文件存在,则清空文件内容再打开''a''追加模式,如果文件不存在,则创建文件再打开; 如果文件存在,打开文件后将新内容追加至原内容之后''b''二进制模式,可添加到其他模式中使用'' ''读写模式,可添加到其他模式中使用
|
|