编辑推荐
本书可以作为(但不限于):
计算机专业本科生程序设计教材或研究生必读书目。
数字媒体技术、软件工程、网络工程、信息安全、通信工程、电子、自动化及其他工科专业本科生或研究生程序设计教材。
会计、经济、金融、管理、心理学、统计以及其他非工科专业研究生或本科生程序设计教材。
非计算机相关专业本科生公共基础课程序设计教材。
专科院校或职业技术学院计算机专业或非计算机专业程序设计教材。
Python培训用书。
具有一定Python基础的读者进阶学习资料。
涉及Python开发的程序员、策划人员、科研人员和管理人员阅读书目。
打算利用业余时间学习一门快乐的程序设计语言并编写几个小程序来娱乐的读者学习资料。
少数对编程具有浓厚兴趣和天赋的中学生课外阅读资料。
内容简介
全书共19章,主要内容如下:第1章介绍Python基础知识与概念;第2章讲解列表、元组、字典、集合等常用序列结构;第3章讲解Python选择结构与循环结构;第4章讲解字符串基本操作方法与正则表达式模块re的用法;第5章讲解函数定义与使用;第6章讲解面向对象编程有关的知识;第7章讲解文本文件与二进制文件的读写,以及文件与目录操作;第8章讲解异常处理结构以及Python程序的调试与测试方法;第9章讲解标准库tkinter和扩展库wxPython的GUI应用;第10章讲解网络编程,网页内容读取,Web应用开发;第11章介绍MapReduce和Hadoop编程;第12章讲解注册表编程、GUI编程以及系统运维编程;第13章讲解多线程与多进程编程;第14章介绍SQLite、Access、MS SQL Server、MySQL访问方法;第15章讲解图形图像编程、音乐编程以及语音识别;第16章介绍逆向工程与软件分析原理、IDAPython编程、Immunity Debugger以及Windows平台软件调试原理;第17章讲解NumPy、SciPy、Matplotlib、statistics与pandas在科学计算与可视化、数据处理、统计与分析中的应用;第18章讲解安全哈希算法、对称密钥密码算法DES与AES以及非对称密钥密码算法RSA与DSA;第19章讲解安卓平台的Python程序设计。 本书对Python内部工作原理进行了一定深度的剖析,90%以上的案例均使用Python 3.5.1实现,个别案例使用Python 2.7.11实现,并适当介绍了Python程序优化和安全编程的有关知识,可以满足不同层次读者的需要。本书既可以作为计算机及相关专业学生的教材,也可以作为 Python爱好者的参考书。
内页插图
目录
第1章基础知识/1
1.1如何选择Python版本/1
1.2Python安装与简单使用/3
1.3使用pip管理Python扩展库/5
1.4Python基础知识/5
1.4.1Python对象模型/5
1.4.2Python变量/6
1.4.3数字/9
1.4.4字符串/10
1.4.5运算符与表达式/11
1.4.6常用内置函数/14
1.4.7对象的删除/17
1.4.8基本输入输出/18
1.4.9模块导入与使用/20
1.5Python代码编写规范/21
1.6Python文件名/23
1.7Python脚本的name属性/24
1.8编写自己的包��/24
1.9Python编程快速入门/25
1.10The Zen of Python��/27
本章小结/28
习题/29第2章Python序列/30
2.1列表/30
2.1.1列表创建与删除/31
2.1.2列表元素的增加/32
2.1.3列表元素的删除/35
2.1.4列表元素访问与计数/39
2.1.5成员资格判断/40
2.1.6切片操作/41
2.1.7列表排序/43
2.1.8用于序列操作的常用内置函数/44
2.1.9列表推导式/46
2.1.10使用列表实现向量运算*/48
2.2元组/49
2.2.1元组的创建与删除/49
2.2.2元组与列表的区别/50
2.2.3序列解包/51
2.2.4生成器推导式/52
2.3字典/53
2.3.1字典创建与删除/53
2.3.2字典元素的读取/54
2.3.3字典元素的添加与修改/55
2.3.4字典应用案例/55
2.3.5有序字典��/56
2.4集合/57
2.4.1集合的创建与删除/57
2.4.2集合操作/58
2.4.3集合运用案例/59
2.5再谈内置方法sorted()/60
2.6复杂数据结构��/62
2.6.1堆/62
2.6.2队列/63
2.6.3栈/65
2.6.4链表/67
2.6.5二叉树/68
2.6.6有向图/70
本章小结/71
习题/72第3章选择与循环/73
3.1条件表达式/73
3.2选择结构/75
3.2.1单分支选择结构/75
3.2.2双分支选择结构/75
3.2.3多分支选择结构/76
3.2.4选择结构的嵌套/77
3.2.5选择结构应用案例/78
3.3循环结构/80
3.3.1for循环与while循环/80
3.3.2循环结构的优化/80
3.4break和continue语句/82
3.5案例精选/83
本章小结/88
习题/89第4章字符串与正则表达式/90
4.1字符串/91
4.1.1字符串格式化/92
4.1.2字符串常用方法/94
4.1.3字符串常量/99
4.1.4可变字符串*/101
4.1.5字符串应用案例精选/101
4.2正则表达式/104
4.2.1正则表达式语法/104
4.2.2re模块主要方法/106
4.2.3直接使用re模块方法/107
4.2.4使用正则表达式对象/108
4.2.5子模式与match对象/110
4.2.6正则表达式应用案例精选/114
本章小结/118
习题/119第5章函数设计与使用/120
5.1函数定义与调用/121
5.2形参与实参/122
5.3参数类型/123
5.3.1默认值参数/123
5.3.2关键参数/125
5.3.3可变长度参数/125
5.3.4参数传递时的序列解包/126
5.4return语句/126
5.5变量作用域/127
5.6lambda表达式/129
5.7案例精选/130
5.8高级话题/134
本章小结/137
习题/138第6章面向对象程序设计/139
6.1类的定义与使用/139
6.1.1类定义语法/139
6.1.2self参数/140
6.1.3类成员与实例成员/140
6.1.4私有成员与公有成员/141
6.2方法/143
6.3属性/145
6.3.1Python 2.x中的属性/145
6.3.2Python 3.x中的属性/147
6.4特殊方法与运算符重载��/149
6.4.1常用特殊方法/149
6.4.2案例精选/150
6.5继承机制/154
本章小结/156
习题/157第7章文件操作/158
7.1文件对象/158
7.2文本文件操作案例精选/159
7.3二进制文件操作案例精选/165
7.3.1使用pickle模块/165
7.3.2使用struct模块/166
7.4文件级操作/167
7.4.1os与os.path模块/167
7.4.2shutil模块/169
7.5目录操作/170
7.6案例精选/171
本章小结/184
习题/184第8章异常处理结构与程序调试、测试/185
8.1基本概念/185
8.2Python异常类与自定义异常/186
8.3Python中的异常处理结构/189
8.3.1try…except结构/189
8.3.2try…except…else结构/190
8.3.3带有多个except的try结构/190
8.3.4try…except…finally结构/191
8.4断言与上下文管理/193
8.4.1断言/193
8.4.2上下文管理/194
8.5用sys模块回溯最后的异常��/194
8.6使用IDLE调试代码/195
8.7使用pdb模块调试程序��/196
8.7.1pdb模块常用命令/196
8.7.2使用pdb模块调试Python程序/197
8.8Python单元测试��/200
本章小结/203
习题/203第9章GUI编程/204
9.1wxPython/204
9.1.1Frame/204
9.1.2Button、StaticText、TextCtrl/207
9.1.3Menu/209
9.1.4ToolBar、StatusBar/210
9.1.5对话框/211
9.1.6RadioButton、CheckBox/212
9.1.7ComboBox/213
9.1.8ListBox/214
9.1.9TreeCtrl/216
9.2tkinter应用案例精选/219
9.2.1用户登录界面/219
9.2.2选择类组件应用/220
9.2.3简单文本编辑器/223
9.2.4简单画图程序/226
9.2.5电子时钟/230
本章小结/232
习题/233第10章网络程序设计/234
10.1计算机网络基础知识/234
10.2UDP和TCP编程/235
10.2.1UDP编程/236
10.2.2TCP编程/237
10.3网络嗅探器与端口扫描器设计/239
10.3.1网络嗅探器/239
10.3.2多进程端口扫描器/240
10.4网页内容读取与网页爬虫/242
10.4.1网页内容读取与域名分析/242
10.4.2版本自适应的网页爬虫/244
10.5使用Python开发网站/245
10.5.1使用IIS运行Python网站/245
10.5.2使用web2py框架开发网站/247
10.5.3使用C#和Python组合开发ASP.NET网站/251
10.5.4Flask框架/253
本章小结/254
习题/255第11章大数据处理/256
11.1大数据框架/257
11.2MapReduce编程案例/258
11.3Hadoop模式的MapReduce应用/261
本章小结/262
习题/262第12章Windows系统编程/263
12.1注册表编程/263
12.2创建可执行文件/266
12.3调用外部程序/267
12.4创建窗口/271
12.5判断操作系统的版本/275
12.6系统运维/275
12.6.1Python扩展库psutil/276
12.6.2使用pywin32实现事件查看器/277
12.6.3切换用户登录身份/280
本章小结/281
习题/282第13章多线程与多进程编程/283
13.1threading模块/283
13.2Thread对象/284
13.2.1Thread对象中的方法/284
13.2.2Thread对象中的daemon属性/285
13.3线程同步技术/287
13.3.1Lock/RLock对象/287
13.3.2Condition对象/288
13.3.3queue对象/290
13.3.4Event对象/290
13.4多进程编程/291
13.4.1创建进程/292
13.4.2进程间数据交换/292
13.4.3进程同步/294
本章小结/295
习题/296第14章数据库编程/297
14.1SQLite应用/297
14.1.1Connection对象/298
14.1.2Cursor对象/299
14.1.3Row对象/301
14.2访问其他类型数据库/302
14.2.1操作Access数据库/302
14.2.2操作MS SQL Server数据库/303
14.2.3操作MySQL数据库/304
本章小结/306
习题/306第15章多媒体编程/307
15.1图形编程/307
15.1.1创建图形编程框架/307
15.1.2绘制文字/308
15.1.3绘制图形/309
15.1.4纹理映射/310
15.1.5处理键盘/鼠标事件/312
15.2图像编程/312
15.2.1图像处理模块PIL与pillow功能简介/312
15.2.2使用pillow计算椭圆中心/314
15.2.3使用pillow动态生成比例分配图/315
15.2.4使用pillow生成验证码图片/316
15.3音乐编程/318
15.4语音识别/320
本章小结/321
习题/321第16章逆向工程与软件分析/322
16.1主流项目与插件简介/322
16.1.1主流项目/323
16.1.2常用插件/323
16.2IDAPython与Immunity Debugger编程/324
16.2.1IDAPython编程/324
16.2.2Immunity Debugger编程/329
16.3Windows平台软件调试原理/334
16.3.1Windows调试接口/334
16.3.2调试事件/335
16.3.3进程调试/336
16.3.4线程环境/337
16.3.5断点/338
16.4案例精选/339
本章小结/341
习题/342第17章科学计算与可视化/343
17.1NumPy简单应用/343
17.2SciPy简单应用/349
17.2.1常数与特殊函数/350
17.2.2SciPy简单应用/351
17.3Matplotlib案例精选/352
17.3.1绘制带有中文标签和图例的正弦余弦曲线
/352
17.3.2绘制散点图/353
17.3.3绘制饼状图/353
17.3.4使用pyplot绘制,多个图形在一起显示
/354
17.3.5使用pyplot绘制,多个图形单独显示/356
17.3.6绘制三维图形/356
17.3.7绘制三维曲线/357
17.4数据分析模块pandas/358
17.5统计分析模块statistics/362
本章小结/364
习题/364第18章密码学编程/365
18.1安全哈希算法/365
18.2对称密钥密码算法DES和AES/365
18.3非对称密钥密码算法RSA与数字签名算法DSA/367
18.3.1RSA/367
18.3.2DSA/369
本章小结/369
习题/369第19章安卓平台的Python编程/370
19.1QPython简介/370
19.2安卓应用开发案例/371
本章小结/375
习题/375参考文献/376
前言/序言
Python程序设计(第2版)/高等院校信息技术规划教材 本书是一本面向高等院校信息技术专业学生的Python程序设计入门教材。旨在帮助读者系统地学习Python语言的基础知识和核心概念,掌握程序设计的基本思想和方法,为后续更深入的计算机科学学习打下坚实的基础。 内容概述: 本书共分为 [此处可以根据实际书籍结构填充章节数,例如:十五章],循序渐进地引导读者从零开始掌握Python编程。 第一部分:Python基础 第一章:Python简介与开发环境搭建 介绍Python语言的特点、优势及其在各个领域的应用,激发学习兴趣。 详细指导读者如何在不同操作系统(Windows, macOS, Linux)上安装Python解释器和集成开发环境(IDE),如PyCharm或VS Code,并进行基本配置,确保读者能够顺利开始编程实践。 第二章:第一个Python程序 指导读者编写并运行第一个简单的Python程序,理解“Hello, World!”的意义,初步接触Python的语法结构。 讲解Python程序的执行流程,以及如何使用print()函数输出信息。 第三章:变量、数据类型与运算符 深入讲解Python中基本的数据类型,包括整数(int)、浮点数(float)、字符串(str)和布尔值(bool)。 阐述变量的声明、赋值以及命名规则。 介绍Python的运算符,包括算术运算符、比较运算符、逻辑运算符和赋值运算符,并通过实例展示它们的用法。 第四章:流程控制语句(条件语句) 讲解如何使用if、elif、else语句来实现程序的条件分支,控制程序的执行路径。 通过生活化的例子,如天气判断、分数等级划分等,帮助读者理解条件语句的应用场景。 第五章:流程控制语句(循环语句) 详细介绍for循环和while循环,讲解它们的语法结构和执行机制。 阐述break和continue语句在循环中的作用,以及如何使用它们来控制循环的终止和跳过。 通过一些经典的算法问题,如求和、计数、打印乘法表等,巩固循环语句的掌握。 第二部分:Python进阶 第六章:列表、元组与字典 介绍Python中常用的复合数据结构:列表(list)、元组(tuple)和字典(dict)。 讲解它们的创建、访问、修改、删除操作,以及各种常用的方法,如append()、insert()、remove()、pop()、get()等。 通过实际案例,如学生成绩管理、电话簿等,展示这些数据结构的强大功能。 第七章:字符串操作 深入讲解字符串的各种常用操作,包括索引、切片、拼接、查找、替换、分割等。 介绍字符串的格式化输出,如使用f-string和.format()方法。 演示如何利用字符串操作处理文本数据,进行信息提取和转换。 第八章:函数 讲解函数的定义、调用以及参数传递(位置参数、关键字参数、默认参数、可变参数)。 阐述函数的返回值,包括单返回值和多返回值。 介绍函数的作用域(局部变量和全局变量),以及如何使用global和nonlocal关键字。 强调函数的设计原则,如模块化、复用性,并通过编写一些实用函数(如计算最大公约数、求斐波那契数列等)进行练习。 第九章:模块与包 介绍Python模块(module)的概念,如何导入和使用标准库模块(如math、random、datetime)。 指导读者如何创建自己的模块,并将其组织成包(package)。 讲解Python的包管理工具pip,以及如何安装和卸载第三方库,为扩展Python功能奠定基础。 第三部分:面向对象编程与文件操作 第十章:面向对象编程基础 介绍面向对象编程(OOP)的核心概念:类(class)和对象(object)。 讲解如何定义类,包括属性(成员变量)和方法(成员函数)。 阐述对象的创建(实例化)以及如何访问对象的属性和调用对象的方法。 通过简单的类设计,如“狗”类、“汽车”类,帮助读者理解OOP的思想。 第十一章:面向对象编程进阶 深入讲解面向对象的三大特性:封装、继承和多态。 讲解类的继承机制,如何创建子类并重写父类的方法。 阐述多态的概念,以及它在代码灵活性和可扩展性方面的优势。 通过更复杂的类设计,如“动物”类体系,展示OOP的强大能力。 第十二章:文件操作 指导读者如何打开、读取、写入和关闭文件。 介绍不同模式的文件打开方式(如'r'、'w'、'a'、'b')。 讲解文本文件和二进制文件的读写方法。 演示如何处理文件路径,以及使用with语句进行自动文件关闭,避免资源泄露。 第十三章:异常处理 讲解Python的异常(exception)概念,以及程序运行时可能出现的错误。 指导读者如何使用try-except语句来捕获和处理异常,提高程序的健壮性。 介绍不同类型的内置异常,以及如何创建自定义异常。 第四部分:综合应用与实践 第十四章:常用标准库的应用 选取若干常用的Python标准库,如`os`(操作系统交互)、`sys`(系统相关)、`re`(正则表达式)等,进行详细介绍和实例演示。 帮助读者了解这些库的功能,并学会如何在实际项目中调用它们来解决问题。 第十五章:简单的项目实践 通过一个或多个小型综合性项目,例如一个简单的命令行计算器、一个文本文件分析工具、一个简单的猜数字游戏等,引导读者将前面学到的知识融会贯通。 强调项目开发过程中的设计思路、代码组织和调试技巧,培养读者的实践能力和解决实际问题的能力。 本书特色: 理论与实践相结合: 每一章都配有丰富的代码示例,并提供练习题,帮助读者巩固所学知识。 循序渐进,通俗易懂: 从基础概念讲起,逐步深入,语言通俗易懂,适合初学者。 贴近教学需求: 作为高等院校信息技术规划教材,内容紧密结合教学大纲,满足课程学习和考试需求。 注重编程思想培养: 在教授语法知识的同时,也注重培养读者的逻辑思维能力、问题分析能力和程序设计思想。 覆盖Python核心内容: 涵盖了Python语言的关键特性,为读者后续学习更高级的主题(如Web开发、数据科学、人工智能等)打下坚实基础。 通过学习本书,读者将能够熟练掌握Python编程语言,具备独立编写Python程序解决问题的能力,为未来的学习和职业发展奠定坚实的IT基础。