欢迎来到中国铁道出版社有限公司官网!
$itImage.title$

Python程序设计与应用

书      号:9787113285432

丛  书 名:

作      者:吴其林,孙光灵,张步群

译      者:

开      本:16开

装      帧:平装

正文语种:

出  版 社:中国铁道出版社有限公司

定      价:46

  • 内容简介

    本书围绕 Python的开发环境,采用理论与实际案例相结合的方式,系统讲解了学习
    Python语言的关键知识点。全书共分 15章,内容包括: Python环境的搭建,基本的数据类型,
    列表、元组和字典,结构化程序设计的控制语句,函数,面向对象程序设计,模块与包的使用,
    文件操作,异常处理,数据库编程,网络编程,tkinter GUI编程,多线程编程,数据分析与可
    视化,Python应用案例。本书思路清晰、循序渐进,以大量实例为依托,对各知识点提供了全面、
    细致的讲解。

    本书适合作为高等学校 Python程序设计课程的教材,也可作为对 Python感兴趣的编程爱好者的自学参考书。
  • 前言

    随着计算机技术和信息产业的快速发展,社会对软件人才的需求量逐年增加。为了培养高层次复合型人才,高等院校在开设计算机基础课程时要呈现出多元化,不能再局限于传统计算机基础知识的普及,要让不同的学生在自己感兴趣的领域不断学习、不断进步、不断突破。毕业后,在计算机领域发挥出自己在高校学习的优势,为国家计算机技术和信息产业的发展做出贡献。
    计算机程序设计和开发是软件人才学习的基础,只有打下扎实的基础,在学习其他课程时才能更加得心应手。但是,学习计算机程序设计和开发是一件非常枯燥的事情,必须要有持之以恒的耐心和不断动手实践的决心。入门后会发现,计算机程序设计其实没有想象的那么难,使用它可以实现很多想要实现的功能,如学生选课系统、银行的金融系统、手机操作系统等。
    作为一门入门级计算机程序设计语言,本书在讲解理论知识的同时,还提供了大量的编程实例让读者上机操作,锻炼自己的编程能力;所有的语法和编程思想都解释得非常通俗易懂,能够让没有计算机编程基础的读者很轻松地入门。 Python语言已经发展了 30多年,有很多优秀的软件工程师参与到 Python语言的开发工作中,使得 Python语言具有非常完善的参考文档供读者查阅,便于读者找到问题的解决方法;具有非常丰富的第三方库,大多数需要的功能都可以直接调用其他工程师开发的接口来实现。
    本书比较全面地介绍了 Python语言的核心知识,把 Python语言的学习分成基础知识(第 1~ 9章)、高级编程(第 10~ 13章)和 Python应用(第 14、15章)三部分。各章内容简要介绍如下:
    第 1章对 Python的发展历史和安装环境做了介绍。
    第 2、3章介绍了 Python的基础数据类型和数据结构,包括字符串、运算符、列表、元组和字典等。
    第 4章介绍了 Python的控制语句,包括选择、循环、break和 continue语句。
    第 5章重点介绍了 Python的函数,由于函数涉及函数调用和参数传递,学习起来会有点难度,只要多做一些编程类的实验很快就能掌握。
    第 6章介绍了面向对象编程的一些概念,如封装、继承、多态等。
    第 7~ 9章是 Python文件操作和异常处理的一些使用方法。
    第 10~ 13章是 Python的一些高级使用方法,包括数据库编程,网络编程、图形界面和多线程编程,这几章对初学者来说有点难度,感兴趣的读者可以深入学习。
    第 14、15章是 Python在现代科学研究过程中的一些应用案例,在很多领域都能看到它的身影,体现了 Python功能的强大。
    为了更好地让初学者深入掌握 Python语言,在每章的后面都设有习题,可以帮助读者巩固所学知识。
    本书由吴其林、孙光灵、张步群任主编,王小超、焦玉清、张倩敏和宋晓晓任副主编。其中:第 1~ 3章由张倩敏编写,第 4、5章由张步群编写,第 6、7章由宋晓晓编写,第 8、9章由孙光灵编写,第 10、11章由焦玉清编写,第 12、13章由吴其林编写,第 14、15章由王小超编写。
    由于时间仓促,编者水平有限,书中难免存在疏漏和不妥之处,恳请读者提出宝贵的意见和建议。
    编 者 2021年 2月
  • 目录

    第 1章 环境搭建 ................................... 1

    1.1 认识 Python ..........................................1

    1.1.1 Python 简史 ..................................1

    1.1.2 Python语言的特点 ......................1

    1.2 Python的安装 ......................................2

    1.3 Python交互式解释器 ..........................6

    1.4 Python程序开发过程 ..........................7
    小结 ...............................................................8
    习题 ...............................................................8


    第 2章 数据类型 ................................... 9

    2.1 变量和数据类型 ..................................9

    2.1.1 变量和赋值 ..................................9

    2.1.2 整型 ............................................10

    2.1.3 浮点型 ........................................10

    2.1.4 复数类型 ....................................11

    2.2 关键字 ................................................11

    2.3 字符串 ................................................12

    2.3.1 字符串和转义字符 ....................12

    2.3.2 深入使用字符串 ........................14

    2.4 运算符 ................................................16

    2.4.1 算术运算符 ................................16

    2.4.2 赋值运算符 ................................17

    2.4.3 位运算符 ....................................19

    2.4.4 关系运算符 ................................19

    2.4.5 逻辑运算符 ................................20

    2.4.6 运算符的优先级 ........................21
    小结 .............................................................21
    习题 .............................................................22


    第 3章 列表、元组和字典 .................. 23

    3.1 列表 ....................................................23




    目 录
    3.1.1 列表创建与删除 ........................23

    3.1.2 访问列表元素 ............................24

    3.1.3 增加列表元素 ............................25

    3.1.4 查找列表中的元素 ....................26

    3.1.5 删除列表元素 ............................28

    3.1.6 修改列表元素 ............................29

    3.1.7 列表的运算 ................................29

    3.1.8 常用方法 ....................................30

    3.2 元组 ....................................................30

    3.2.1 创建元组 ....................................30

    3.2.2 元组的基本操作 ........................31

    3.3 字典 ....................................................32

    3.3.1 字典的创建与删除 ....................32

    3.3.2 字典元素的访问与修改 ............33

    3.3.3 字典元素的运算符操作 ............34

    3.3.4 删除字典元素 ............................34

    3.3.5 字典的复制和更新 ....................35

    3.3.6 字典的遍历 ................................37

    3.4 集合 ....................................................37

    3.4.1 集合的创建 ................................37

    3.4.2 集合的访问与修改 ....................38

    3.4.3 集合的删除 ................................39

    3.4.4 集合的运算符操作 ....................40
    小结 .............................................................40
    习题 .............................................................41


    第 4章 控制语句 ................................. 43

    4.1 条件语句 ............................................43

    4.1.1 if语句 .........................................43

    4.1.2 if...else语句 ................................43

    4.1.3 多 if嵌套语句 ............................44

    4.2 循环语句 ............................................45

    4.2.1 for循环语句 ...............................45

    4.2.2 for...else循环语句 ......................45

    4.2.3 嵌套 for循环语句 ......................45

    4.2.4 while循环语句 ...........................46

    4.2.5 while...else循环语句 .................46

    4.3 break和 continue语句 ......................47

    4.3.1 break语句 ...................................47

    4.3.2 continue语句 ..............................47

    4.4 pass语句 ............................................48
    小结 .............................................................48
    习题 .............................................................48


    第 5章 函数 ........................................ 51

    5.1 函数的概念 ........................................51

    5.2 函数的定义和调用 ............................52

    5.3 函数的参数和参数传递 ....................55

    5.3.1 函数的形参和实参 ....................55

    5.3.2 位置参数 ....................................55

    5.3.3 关键字参数 ................................56

    5.3.4 默认值参数 ................................56

    5.3.5 参数传递 ....................................57

    5.4 变量的作用域 ....................................58

    5.4.1 局部变量 ....................................59

    5.4.2 全局变量 ....................................59

    5.5 迭代器和生成器 ................................60

    5.5.1 迭代器和生成器 ........................60

    5.5.2 排序与 lambda ............................65

    5.5.3 高阶函数 ....................................66
    小结 .............................................................67
    习题 .............................................................67


    第 6章 面向对象程序设计 .................. 69

    6.1 类和对象 ............................................69

    6.1.1 类定义语法 ................................70

    6.1.2 对象 ............................................70

    6.1.3 self参数 ......................................71

    6.1.4 实例变量 ....................................73

    6.1.5 类变量 ........................................73

    6.2 方法 ....................................................74

    6.2.1 类方法 ........................................75

    6.2.2 实例方法 ....................................76

    6.2.3 静态方法 ....................................76

    6.3 封装、继承与多态 ............................77

    6.3.1 封装 ............................................77

    6.3.2 继承 ............................................80

    6.3.3 多态 ...........................................82
    小结 .............................................................84
    习题 .............................................................84


    第 7章 模块与包 ................................. 86

    7.1 命名空间 ............................................86

    7.1.1 命名空间的分类 ........................86

    7.1.2 命名空间的规则 ........................87

    7.2 模块 ....................................................88

    7.2.1 导入模块 ....................................89

    7.2.2 导入与执行语句 ........................90

    7.2.3 import和 from的使用 ...............91

    7.2.4 重新载入模块 ............................93

    7.2.5 嵌套导入模块 ............................93


    7.2.6 模块对象属性和命令行参数 ....93
    7.3 包 ........................................................95
    小结 .............................................................96
    习题 .............................................................97


    第 8章 文件操作 ................................. 99

    8.1 文件的路径 ........................................99

    8.1.1 路径的概念 ................................99

    8.1.2 绝对路径与相对路径 ..............100

    8.2 文件的读写 ......................................100

    8.2.1 文件的打开与关闭 ..................101

    8.2.2 文件的读写 ..............................101

    8.2.3 文件的定位 ..............................104

    8.3 文件操作函数 ..................................105

    8.3.1 文件操作相关函数 ..................105

    8.3.2 文件系统常用操作 ..................106

    8.4 二进制文件操作 ..............................106

    8.4.1 使用 pickle模块 .......................106

    8.4.2 使用 struct模块 ........................107

    8.4.3 文件批量处理 ..........................108
    小结 ...........................................................109
    习题 ...........................................................109


    第 9章 异常处理 ................................111

    9.1 异常的概念 ......................................111

    9.2 异常处理机制 ..................................113

    9.2.1 try...except结构 ........................114

    9.2.2 try...except...else结构 ...............115

    9.2.3 多异常捕获 ..............................115

    9.2.4 try...except....nally结构 ...........118

    9.3 异常高级用法 ..................................119

    9.3.1 强制触发异常(raise) ...........119

    9.3.2 断言与上下文管理语句 ..........120
    小结 ...........................................................121
    习题 ...........................................................121


    第 10章 数据库编程 ......................... 123

    10.1 Python数据库 API ........................123

    10.1.1 全局变量 ................................123

    10.1.2 数据库异常 ............................124

    10.1.3 连接和游标 ............................125

    10.1.4 类型 ........................................126

    10.2 轻型数据库与 MySQL ..................127

    10.2.1 SQLite的使用 ........................127

    10.2.2 MySQL的使用 ......................130

    10.2.3 数据库应用程序示例 ............132
    小结 ...........................................................134
    习题 ...........................................................134


    第 11章 网络编程 ............................. 136

    11.1 网络模块 .......................................136

    11.1.1 Socket模块 .............................136

    11.1.2 urllib和 urllib2模块 ..............138

    11.1.3 其他模块 .................................141

    11.2 高级模块 SocketServer .................142

    11.2.1 创建 SocketServer TCP服务器 ....................................143
    11.2.2 创建 SocketServer TCP客户端 ....................................144
    11.2.3 执行 TCP服务器和客户端 ......144小结 ...........................................................145习题 ...........................................................145

    第 12章 tkinter GUI 编程.................. 146

    12.1 tkinter编程基础 .............................146

    12.1.1 第一个 tkinter GUI 程序 ........146

    12.1.2 组件打包 ................................148

    12.1.3 添加按钮和事件处理函数.........................................150
    12.1.4 使用布局 ................................152

    12.1.5 使用框架 ................................155

    12.2 tkinter 组件 .....................................156

    12.2.1 组件通用属性设置 ................156

    12.2.2 输入组件(Entry) ................158

    12.2.3 列表框组件(Listbox) ........161

    12.2.4 复选框组件(Checkbutton) .....................163
    12.2.5 标签框架(LabelFrame) .....164
    12.2.6 文本框组件 (Text) ..................165

    12.2.7 顶层窗口组件(Toplevel) .............................167
    12.2.8 菜单组件(Menu) ...............168

    12.2.9 对话框 ....................................170
    小结 ...........................................................173
    习题 ...........................................................173


    第 13章 多线程编程 ......................... 175

    13.1 线程与进程 ....................................175

    13.1.1 线程 ........................................175

    13.1.2 进程 ........................................175

    13.1.3 多线程与多进程 ....................176

    13.2 Python 多线程编程 ........................176

    13.2.1 Python 多线程的特殊性 ........176

    13.2.2 threading模块多线程编程 ....177
    13.3 Python多进程编程 ........................189

    13.3.1 Python多进程编程的特点 ....189
    13.3.2 multiprocessing模块多进程编程.........................................189小结 ...........................................................198习题 ...........................................................198

    第 14章 数据分析与可视化 .............. 200

    14.1 NumPy基础科学计算库 ...............200

    14.1.1 创建 NumPy 数组 ..................200

    14.1.2 数组与数值的算术运算 ........201

    14.1.3 数组与数组的算术运算 ........202

    14.1.4 数组的关系运算 ....................202

    14.1.5 分段函数 ................................203

    14.1.6 数组元素访问 ........................203

    14.1.7 数组切片操作 ........................203

    14.1.8 改变数组形状 ........................204

    14.1.9 二维数组转置 ........................205

    14.1.10 向量内积 ..............................205

    14.1.11 数组的函数运算 ...................205

    14.1.12 对数组不同维度元素进行计算.......................................206
    14.1.13 广播 ......................................207

    14.1.14 计算数组中元素出现次数.......................................207
    14.1.15 矩阵运算 ..............................208

    14.2 SciPy科学计算扩展库 .................208

    14.2.1 常数模块(constants) ..........209

    14.2.2 特殊函数模块(special) .....210
    14.2.3 多项式计算与符号计算 ........210

    14.3 Matplotlib数值计算可视化库 ......212
    14.3.1 绘制正弦曲线 ........................212

    14.3.2 绘制散点图 ............................212

    14.3.3 绘制饼图 ................................214

    14.3.4 绘制带有中文标签和图例的图.........................................214
    14.3.5 绘制带有公式的图 ................215

    14.3.6 绘制三维参数曲线 ................216

    14.3.7 绘制三维图形 ........................217

    14.4 pandas数据分析库 .......................218

    14.4.1 安装 pandas ............................218

    14.4.2 pandas的数据结构 Series ......218
    14.4.3 pandas的数据结构 DataFrame ...............................220小结 ...........................................................223习题 ...........................................................223

    第 15章 Python应用案例 ................ 225

    15.1 泰坦尼克号乘客生存分析 ............225

    15.1.1 数据来源 ................................225

    15.1.2 导入数据 ................................225

    15.1.3 查看数据 ................................226

    15.1.4 数据补全 ................................228

    15.1.5 数据编码 ................................228

    15.1.6  数据可视化 ...........................231

    15.2 Python网络爬取 ............................236

    15.2.1 BeautifulSoup库 ....................236

    15.2.2 爬取搜狐体育新闻 ................241

    15.3 手写识别系统 ................................244

    15.3.1 K近邻算法原理 .....................244

    15.3.2 KNN 算法实现 .......................245

    15.3.3 KNN算法优缺点 ...................246

    15.3.4 手写数字识别系统 ................247
    小结 ...........................................................251
    习题 ...........................................................251


    参考文献 ............................................. 252
  • 作者介绍

    吴其林,男,安徽肥西县人。2011年12月合肥工业大学计算机应用技术专业博士毕业,获工学博士学位。现工作于巢湖学院信息工程学院,教授,副院长,安徽省教学名师。现为中国计算机学会会员,安徽省计算机学会理事,安徽省电子学会理事。 孙光灵,男,安徽淮南市人,工学硕士学位,安徽建筑大学副教授。现为中国计算机学会会员,安徽省人工智能学会会员,中国计算机教育MOOC联盟安徽工委秘书长,信息技术新工科安徽工委秘书长,安徽省高等学校计算机教育研究会副秘书长。 主要研究方向为人工智能、图像处理等。发表学术论文20余篇,已获授权实用新型专利、外观设计专利4项,编写教材3部,主讲计算机课程8门。 张步群,安徽省合肥市巢湖学院信息工程学院-大学计算机基础教学教研室主任,教学经历:授课名称:C程序设计起止时间:1999年-现在授课对象:大学本科生授课学时:每学期72学时教学经历:1.VisualFoxPro程序设计,参编,电子科技大学出版社,2013年7月。2.参与编写《C语言程序设计教程》,重庆大学出版社,2010年8月
  • 编辑推荐

    作为一门入门级计算机程序设计语言,本书在讲解理论知识的同时,还提供了大量的编程实例让读者上机操作,锻炼自己的编程能力;所有的语法和编程思想都解释得非常通俗易懂,能够让没有计算机编程基础的读者很轻松地入门。
  • 书评书荐

  • 附件下载

图书推荐