




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
普通高等教育“十三五”规划教材
Python基础与案例教程
宁淑荣 廖礼萍◎主编
于大为汪沁然张翠霞◎副主编
内容简介
本书从初学者的角度出发,对Python基础知识进行讲解,并结合实际需求,给出案例
开发过程,真正做到把书本上的知识与实际应用相结合。前面8章基础知识适合初学者学
习,后面4章介绍了Cython和Python游戏开发等高级应用,并提供完整综合案例开发过程,
适合初学者提升开发技能。
本书附有源代码、习题、教学课件、微课视频等资源,读者可登录中国铁道出版社有
限公司官方网站(/51eds/)下载或联系编者索要。
本书既适合作为高等院校本、专科计算机相关专业的教材,也可作为社会培训教材,
是一本适合初学者入门、提升的学习参考读物。
图书在版编目(CIP)数据
Python基础与案例教程/宁淑荣,廖礼萍主编.—北京:
中国铁道出版社有限公司,2020.6
普通高等教育“十三五”规划教材
ISBN978-7-113-26795-7
Ⅰ.①P…Ⅱ.①宁…②廖…Ⅲ.①软件工具-程序设计-
高等学校-教材Ⅳ.①TP311.561
中国版本图书馆CIP数据核字(2020)第061948号
书名:Python基础与案例教程
作者:宁淑荣廖礼萍
策划:祝和谊编辑部电话:(010)63549508
责任编辑:陆慧萍贾淑媛
封面设计:刘颖
责任校对:张玉华
责任印制:樊启鹏
出版发行:中国铁道出版社有限公司(100054,北京市西城区右安门西街8号)
网址:/51eds/
印刷:北京柏力行彩印有限公司
版次:2020年6月第1版2020年6月第1次印刷
开本:787mm×1092mm1/16印张:13字数:296千
书号:ISBN978-7-113-26795-7
定价:35.00元
版权所有侵权必究
凡购买铁道版图书,如有印制质量问题,请与本社教材图书营销部联系调换。电话:(010)63550836
打击盗版举报电话:(010)51873659
FOREWORD前言
Python目前是很多大学的基础课之一,与C语言共同成为计算机专业、非计算机专
业的入门语言。此外,Python作为一种人工智能语言,已经基本成为共识,社会各界对
Python语言掀起了学习的热潮,市场对Python各方面的人才需求猛增,比如数据分析处
理、数据可视化、数据挖掘、网络爬虫等。Python正在与多个行业相互渗透,越来越多
的人开始学习Python,以适应市场需求,寻求更广阔的发展空间。
为什么要学习本书
本书是从初学者的角度出发,知识分解由浅入深,并采用案例驱动的方式,在基础知
识讲解后,用案例来讲解Python基础知识在实际开发中的应用,是一本非常适合初学者
学习的书籍。
如何使用本书
初学者使用本书时,建议从头开始循序渐进地学习书中的理论知识,反复书写代码以
验证书中的案例,达到熟能生巧的境界,进而实现理论为我所用。如果是有基础的编程
人员,则可以有选择性地挑选章节跳跃阅读。
第1章主要介绍Python3.X的特点、Python应用领域、Python环境搭建过程以及
程序开发的一般流程,希望读者能够下载合适的软件安装版本,并且能够顺利搭建开发环
境,同时在程序开发过程中,能够做到遵循程序开发的基本流程。
第2章主要对Python中的基础语法进行介绍,包括Python中的变量、基本数据
类型[number(数值型)、string(字符串)、boolean(布尔值)、None(空值)、list(列
表)、tuple(元组)、dict(字典)等]、运算符以及运算符的优先级等基础知识,每个
知识点都用Python代码举例分析。通过本章的学习,读者在Python程序设计中定义变
量时,能够选择合适的数据类型,能理解运算符的优先级对表达式的影响,并设计出合理
的表达式。为后面进一步学习Python开发打下基础。
第3章主要介绍Python中常用的语句,以三种基本结构为基础,介绍了条件判断语句、
循环语句、for语句、while语句、break语句、continue语句等,本章是Python基础
知识中入门级知识,初学者务必要全面掌握本章的知识点,建议对每个案例都做到亲自验
证并理解其中的区别,要能区分何种情况下使用for语句、何种情况下使用while语句、
2Python基础与案例教程
何种情况下使用break语句、何种情况下使用continue语句,面对实际问题,要能迅速
判断用哪种基本结构来处理。
第4章介绍字符串的相关知识。主要介绍字符串的基本概念、字符串的输入和输出、
访问字符串、字符串的常见内置函数、字符串的运算符及其运用等知识。字符串是Python
最常用的数据类型,在学习时,读者应结合本章的代码演示理解字符串的定义、输入输出、
字符串的访问等相关知识,在Python程序设计时能正确地使用字符串,掌握字符串函数
的使用以及字符串的运算等相关应用。
第5章主要介绍列表、元组和字典,这三种数据类型都属于组合数据类型,是Python
中比较有特色且最常用的数据类型。通过本章的学习,读者既要能区分三种数据类型之间
的区别,还需要掌握三种数据类型独有的函数或方法。
第6章介绍函数的相关知识,主要介绍函数的定义和调用、函数的参数和返回值、嵌
套函数、递归函数、变量的作用域、函数变量、闭包函数、匿名函数、装饰器、日期函数、
随机函数等知识,通过本章的学习和代码示例,读者能掌握函数的定义和调用,并能学会
使用嵌套函数、递归函数、装饰器等函数的高级应用,通过查询Python内置函数并在程
序中调用,读者能提高Python程序设计的能力。
第7章主要介绍引起程序中断的异常,包括内置异常类的层次结构、异常提示信息的
分析、异常实例、异常捕获的几种分析。通过本章的学习,读者可以了解异常发生的基本
原理,掌握异常处理的基本手段,可在后续编程中合理地使用异常处理方式来捕获及处
理异常。
第8章主要介绍Python面向对象编程知识,包括类和对象的基本概念、类属性和方
法、类的构造方法和析构方法、self关键字的使用、运算符的重载、面向对象的基本特征
(封装、继承、多态)等面向对象初高级编程知识。通过本章的学习,读者能理解如何使
用Python进行类和对象的创建和使用,理解在Python中如何实现封装、继承、多态以
及运算符重载等面向对象特征。读者可以多练习本章实例,在实践中学会使用Python进
行面向对象程序设计。
第9章主要用一个有趣的例子——迷宫,来练习之前章节所学到的内容,同时引入一
个便利的Python开发环境来帮助读者可视化地知道自己所写的代码会生成什么样的图片。
通过本章的学习,读者可以掌握Python虚拟环境和Jupyter开发环境的使用,并通过编
写迷宫的管理、生成、显示、求解方法来练习之前章节所学到的内容,帮助读者更好也更
深入地理解Python开发的相关语法。
前言3
第10章主要介绍Cython,提供了一种能够加速Python程序运行的方法。通过本章
的学习,读者可以掌握Cython的特殊语法,并用Cython提升在第9章中所书写的迷宫
代码的效率,帮助读者在后续的编程中合理地使用Cython来提升Python代码的运行
效率。
第11章主要介绍Python中如何使用pygame完成图形的描绘和对用户操作的响应,
通过对2048程序的开发,读者可以学习到在Python中用户的操作是如何表达出来的,
如何获取这些操作并且做出响应;也可以学习程序是如何将编程者期望的内容通过画板的
形式描绘在显示设备上。本章学习结束后,读者应当具备开发一个小游戏的能力。
第12章主要介绍Python中的WebSocket、MQTT和PyQuery等模块的使用,
包括MQTT服务端的配置和搭建、WebSocket的工作方法、使Python程序通过
WebSocket与客户端进行数据交换,以及PyQuery、Urllib等库如何模拟一次网页访问
并且提取网页中想要获取的内容等。通过本章的学习,读者可以从零开始构建一套使用
MQTT和WebSocket传递数据并且通过PyQurey爬虫来获取数据的魔镜系统。
编写说明
本书的编写得到了北京联合大学规划教材建设项目资助,主要参与人员有宁淑荣、
廖礼萍、于大为、汪沁然、张翠霞、韩林、孙建等,全体人员在近一年的编写过程中付出
了很多辛勤的汗水。
意见反馈
尽管我们付出了很大的努力,但书中难免仍然会有不妥之处,欢迎各界专家和读者朋
友来信提出宝贵意见,我们将不胜感激。您在阅读本书期间,若发现任何问题或有不认同
之处,均可通过电子邮件与我们取得联系。
请发送邮件至:fancyning@163.com
编者
2020年2月
CONTENTS目录
第1章Python概述....................................................1
1.1 Python3.x简介......................................................................................................................................................1
1.1.1Python的特点.....................................................................................................3
1.1.2Python的应用领域.............................................................................................3
1.2 Python环境搭建....................................................................................................................................................5
1.2.1安装Python3.7.4................................................................................................5
1.2.2集成开发环境——PyCharm...............................................................................8
1.3 程序开发的一般流程.........................................................................................................................................12
1.4 程序编写的IPO方法.........................................................................................................................................13
小结...........................................................................................................................................13
习题...........................................................................................................................................14
第2章Python基础语法...............................................15
2.1基本语法......................................................................................................................................................................15
2.2Python变量及变量类型...................................................................................................................................17
2.3 标识符和关键字......................................................................................................................................................25
2.4 数据类型转换...........................................................................................................................................................26
2.5 Python运算符........................................................................................................................................................27
2.5.1算术运算符........................................................................................................27
2.5.2比较(关系)运算符........................................................................................29
2.5.3赋值运算符........................................................................................................30
2.5.4逻辑运算符........................................................................................................32
2.5.5位运算符...........................................................................................................32
2.5.6成员运算符........................................................................................................32
2.6 运算符优先级...........................................................................................................................................................33
小结...........................................................................................................................................35
习题...........................................................................................................................................35
IIPython基础与案例教程
第3章常用流程控制语句...............................................36
3.1 条件判断语句...........................................................................................................................................................36
3.1.1 单分支结构if语句............................................................................................36
3.1.2二分支结构if...else语句..................................................................................37
3.1.3多分支结构if...elif...else语句.........................................................................38
3.2 循环语句......................................................................................................................................................................40
3.2.1for语句..............................................................................................................40
3.2.2for...inrange()....................................................................................................41
3.2.3for...else.............................................................................................................43
3.2.4while语句..........................................................................................................44
3.3 break语句和continue语句........................................................................................................................45
小结...........................................................................................................................................45
习题...........................................................................................................................................45
第4章字符串.........................................................47
4.1 字符串简介................................................................................................................................................................47
4.2 字符串的输入和输出...........................................................................................................................................49
4.3 字符串访问................................................................................................................................................................51
4.4字符串函数................................................................................................................................................................53
4.5字符串运算符...........................................................................................................................................................55
小结...........................................................................................................................................56
习题...........................................................................................................................................56
第5章列表、元组和字典...............................................58
5.1 列表概述......................................................................................................................................................................58
5.2列表常见操作...........................................................................................................................................................58
5.2.1访问列表中的值................................................................................................58
5.2.2更新列表...........................................................................................................59
5.2.3将字符串转换为列表........................................................................................59
5.2.4删除列表中的元素............................................................................................59
5.2.5复制列表...........................................................................................................60
5.2.6列表中增加元素................................................................................................61
5.2.7列表中的常用函数............................................................................................62
目录III
5.3元组.................................................................................................................................................................................63
5.3.1元组和格式化字符串........................................................................................64
5.3.2元组的其他用法................................................................................................64
5.4字典.................................................................................................................................................................................66
5.4.1访问字典中的值................................................................................................66
5.4.2修改字典...........................................................................................................67
5.4.3字典中键的类型................................................................................................67
5.4.4字典的3种排序方法........................................................................................68
小结...........................................................................................................................................68
习题...........................................................................................................................................69
第6章函数...........................................................70
6.1函数简介......................................................................................................................................................................70
6.2函数的定义和调用................................................................................................................................................71
6.3函数的参数和返回值...........................................................................................................................................73
6.3.1函数的参数........................................................................................................73
6.3.2函数返回值........................................................................................................77
6.4嵌套函数......................................................................................................................................................................79
6.5递归函数......................................................................................................................................................................80
6.6变量的作用域...........................................................................................................................................................81
6.7高级函数......................................................................................................................................................................86
6.7.1函数变量...........................................................................................................86
6.7.2闭包函数...........................................................................................................86
6.7.3匿名函数...........................................................................................................87
6.7.4装饰器...............................................................................................................88
6.8Python常见的内置函数...................................................................................................................................93
6.9日期时间函数...........................................................................................................................................................94
6.9.1时间函数...........................................................................................................95
6.9.2Time和Calendar模块......................................................................................97
6.10随机函数...................................................................................................................................................................98
6.10.1random模块常用函数.....................................................................................99
6.10.2标准库string..................................................................................................100
小结.........................................................................................................................................100
习题.........................................................................................................................................101
IVPython基础与案例教程
第7章异常..........................................................102
7.1异常信息...................................................................................................................................................................102
7.1.1raise异常类......................................................................................................104
7.1.2raise异常实例..................................................................................................105
7.1.3raise..................................................................................................................105
7.1.4raise...from.....................................................................................................105
7.2异常捕获...................................................................................................................................................................106
小结.........................................................................................................................................109
习题.........................................................................................................................................109
第8章Python面向对象编程..........................................110
8.1面向对象编程概述.............................................................................................................................................110
8.2类和对象...................................................................................................................................................................112
8.3构造方法和析构方法........................................................................................................................................118
8.4self的使用..............................................................................................................................................................120
8.5运算符重载..............................................................................................................................................................120
8.6封装..............................................................................................................................................................................127
8.7继承..............................................................................................................................................................................128
8.8多态..............................................................................................................................................................................132
小结.........................................................................................................................................134
习题.........................................................................................................................................134
第9章迷宫与Python................................................137
9.1安装虚拟环境和依赖........................................................................................................................................137
9.2迷宫管理...................................................................................................................................................................138
9.2.1迷宫地图管理..................................................................................................138
9.2.2迷宫显示.........................................................................................................141
9.2.3迷宫生成算法..................................................................................................143
9.2.4创造并展示迷宫..............................................................................................145
9.3寻找迷宫的出口...................................................................................................................................................146
9.3.1搜索算法.........................................................................................................146
9.3.2增加显示函数..................................................................................................153
小结.........................................................................................................................................156
习题.........................................................................................................................................156
目录V
第10章Cython.....................................................157
10.1Cython——Python的方言之一.......................................................................................................157
10.1.1安装Cython..................................................................................................157
10.1.2Cython语法..................................................................................................158
10.1.3将Python代码转换为Cython代码.............................................................159
10.1.4编译Cython文件..........................................................................................159
10.1.5Jupyter与Cython..........................................................................................159
10.2测量性能................................................................................................................................................................160
10.3用Cython改写迷宫.....................................................................................................................................163
10.3.1用Cython创造迷宫......................................................................................163
10.3.2对比Python和Cython的速度....................................................................165
小结.........................................................................................................................................165
习题.........................................................................................................................................165
第11章Python游戏开发.............................................167
11.1初识pygame.....................................................................................................................................................167
11.1.1安装pygame..................................................................................................167
11.1.2pygame常用函数一览...................................................................................168
11.2Hello2048!.....................................................................................................................................................169
11.2.1逻辑分析.......................................................................................................169
11.2.2代码设计.......................................................................................................169
11.2.3开始开发.......................................................................................................170
11.2.4测试和发布....................................................................................................178
小结.........................................................................................................................................178
习题.........................................................................................................................................179
第12章魔镜制造....................................................180
12.1什么是魔镜...........................................................................................................................................................180
12.2程序结构说明.....................................................................................................................................................181
12.2.1数据爬虫.......................................................................................................181
12.2.2数据中转.......................................................................................................181
12.2.3数据显示.......................................................................................................181
12.3程序说明和开发................................................................................................................................................181
12.3.1数据的来源....................................................................................................182
VIPython基础与案例教程
12.3.2数据的展示...............................................
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 充分准备的行政组织理论试题及答案
- 西药批发企业客户关系管理策略与实施考核试卷
- 嵌入式开发考试案例解析试题及答案
- 行政组织理论的实践性分析与2025年试题及答案
- 四级软件测试职业生涯规划试题及答案
- 软件测试工程师考试常见问题试题及答案
- 嵌入式系统的故障排除指南试题及答案
- 疾病预防控制检测考核试卷
- 油品质量分析与检测技术考核试卷
- 开发中的最佳实践试题及答案
- 家具供货结算协议书
- 2025届湖南省邵阳市高三下学期第三次联考物理试卷(含答案)
- 2025年公证员资格考试全国范围真题及答案
- 叉车作业安全协议书
- 房屋解除转让协议书
- 小学生美术讲课课件
- 新闻采访考试试题及答案
- 2025年北京市西城区高三语文二模考试卷附答案解析
- 2024-2025学年沪教版(五四学制)七年级英语下学期考点突破:书面表达15篇(含答案)
- JJF 2215-2025移动源排放颗粒物数量检测仪校准规范
- 选择性必修1 《当代国际政治与经济》(主观题答题模版)
评论
0/150
提交评论