过完春节快递小哥们上班以后,公众号会连续送几波书,敬请留意!

书名:Python程序设计入门与实践

ISBN:978-7-5606-5960-2

作者:董付国

页数:319页

例题数量:73例

演示代码:200段(不含例题代码)

习题数量:219道

表格数量:16个

插图数量:68个

微课视频:7小时

定价:53.00

出版日期:2021.02

教材特色:以Python 3.8/3.9为例进行讲解,代码加灰底方便阅读,注释量大,讲解详细,注重学习方法和开发思维的培养,介绍了大量学习过程中和开发实践中常见的和容易犯的错误以及对应的解决方法,任课教师免费获取教学大纲、PPT、源码、习题答案。

作者简介

董付国,山东省一流本科课程“Python应用开发”负责人,华为技术有限公司独立顾问,阿里云天池实训平台合作伙伴,山东省高等教育优秀教材《Python程序设计基础(第2版)》作者,清华大学出版社3本畅销教材(《Python程序设计基础(第2版)》《Python程序设计(第2版)》《Python程序设计(第3版)》)作者,机械工业出版社计算机分社本科教材“金牌作者”(出版《Python程序设计基础与应用》),机械工业出版社高等教育教材专家咨询委员会委员,出版的Python系列教材被国内超过600所高校选用,国家图书馆和各省市图书馆、学校图书馆馆藏,累计印刷超过120次,其中《Python可以这样学》在台湾发行繁体版。多次获得校级教学优秀效果一等奖和教学质量奖,开发过多套大中型软件系统。拥有国家发明专利1项,软件著作权1项。两次入选“中国大数据创新百人榜单”,长期维护微信公众号“Python小屋”并免费分享超过1100篇Python技术文章和超过500节微课视频,智慧树慕课进入平台TOP100,腾讯云+社区优秀作者。近几年来应邀为国内高校和企业作报告或培训100多次,多次应邀出席全国教学研讨会做Python专题报告。

前言

自1991年发行第一个版本以来,Python一直是信息安全领域人士必备编程语言之一,近几年迅速渗透到数据采集、数据分析、数据挖掘、数据可视化、科学计算、人工智能、网站开发、系统运维、办公自动化、游戏策划与开发、图像处理、计算机图形学、虚拟现实、音频处理、视频处理、辅助设计与辅助制造、移动终端开发等众多领域,展示出了强大的生命力和良好的生态。截至2020年8月,Python扩展库索引网站https://pypi.org/维护的各领域扩展库已经超过25万个项目并且每天都有新的成员加入到这个大家庭中。

目前国内外很多高校和中小学已经开设了Python程序设计相关的课程,小部分学校的专业还建设了以Python为中心的课程群,可以说Python已经全面进入大众视野。尽管如此,仍有很多Python开发者和任课老师并不是很熟悉Python,只是到处复制一些代码来用,一旦代码出现问题就茫然无措,不知从何处下手调试和解决。网上搜索到的答案良莠不齐,初学者难以判断真假,甚至有的答主都不知道自己在说什么,答非所问、似是而非的情况比比皆是。

本书内容的组织是这样的:首先重点讲解Python开发环境搭建,然后讲解内置函数、内置数据类型、运算符、程序控制结构、自定义函数、文件操作以及常用标准库的用法,最后通过几个综合案例演示Python的实战应用。通过大量演示性代码和例题展示了基础语法的细节和应用,还介绍了很多学习方法和常见错误,并且把一些标准库和扩展库的用法以及代码调试方法分散融入到相应的演示性代码和案例中,几乎每一句话、每一行代码都是知识。

本书适合作为研究生、本科、专科各专业的程序设计课程教材,也可以作为Python工程师和爱好者的自学用书。在阅读和学习时需要注意以下几点:

1)至少把书从头到尾认真阅读三遍以上,不要以为把书买回来或发到手以后写上自己的名字就学会了;

2)至少把书中的演示性代码和例题代码亲自输入、调试、运行一遍,一定要自己对着书敲代码,即使有源码文件,尽量不要拿来直接运行,避免一看就会一写就错;

3)学习书中代码时遇到不懂的要多查官方文档,做一些必要的笔记作为补充,直接记在书上空白处即可,倒没必要用专门的笔记本;

4)多思考每个案例的知识点能解决什么问题,不同案例组合之后能够解决什么问题,理解和熟练掌握书中代码之后,尝试做一些修改、集成和二次开发来实现实际生活和工作中的更多功能,这样会提高更快。

5)学会学习比学习知识本身更重要。本书开始策划时刚刚有Python 3.8,写完时Python 3.9已经发行了并且Python 3.10已经开始设计,估计大家学完这本书的时候最新版本就变成Python 3.10了,几乎所有扩展库也会保持同样的更新速度。虽然Python语言的版本更新速度很快,但好处在于向下兼容,本书中涉及基础语法和标准库的内容完全可以在新版本中使用。扩展库就不一定了,在版本升级时很多用法会发生改变,使用低版本扩展库编写的代码在升级扩展库之后无法运行是很常见的事情。所以,学习书中知识是一方面,更重要的是体会和理解这些知识,掌握学习方法和调试代码的方法,升级到新版本后能够以最短的时间熟悉并运用新特性。

本书为任课教师提供教学大纲、课件、源码、习题答案等教学资源,部分难度较大的案例还提供了相应的视频讲解二维码。可以通过西安电子科技大学出版社官方渠道获取这些资源,也可以通过微信公众号“Python小屋”直接联系作者反馈问题和交流。

董付国

2020年8月

目录

第1章 Python开发环境的搭建与使用......... 1

1.1  Python语言特点与应用领域.........  1

1.2  Python安装与IDLE简单使用.........  2

1.3  Anaconda3安装与Jupyter Notebook、Spyder简单使用.........  9

1.4  在PowerShell或命令提示符环境中运行Python程序.........  13

1.5  安装扩展库.........  14

1.5.1  基本概念.........  14

1.5.2  安装扩展库 ......... 15

1.5.3  常见问题与解决方法.........  17

1.6  标准库、扩展库对象的导入与使用 ......... 19

1.6.1  import 模块名[ as 别名] ......... 19

1.6.2  from 模块名/库名 import 对象名/模块名[ as 别名] ......... 20

1.6.3  from 模块名 import * ......... 21

1.6.4  高级用法与常见问题 ......... 22

1.7  Python代码编写规范 ......... 24

习题 ......... 28

第2章 内置类型、内置函数与运算符 ......... 29

2.1  常用内置类型 ......... 29

2.1.1  整数、实数、复数 ......... 32

2.1.2  列表、元组、字典、集合 ......... 35

2.1.3  字符串 ......... 37

2.1.4  函数 ......... 39

2.2  运算符与表达式 ......... 40

2.2.1  算术运算符 ......... 42

2.2.2  关系运算符 ......... 45

2.2.3  成员测试运算符 ......... 47

2.2.4  集合运算符.........  48

2.2.5  逻辑运算符 ......... 49

2.2.6  下标运算符与属性访问运算符 ......... 50

2.2.7  赋值运算符 ......... 51

2.3  常用内置函数 ......... 53

2.3.1  基本输入/输出 ......... 57

2.3.2  dir()、help() ......... 62

2.3.3  range() ......... 66

2.3.4  类型转换.........  67

2.3.5  最大值、最小值 ......... 72

2.3.6  元素数量、求和 ......... 74

2.3.7  排序、逆序 ......... 76

2.3.8 zip() ......... 78

2.3.9  enumerate() ......... 80

2.3.10 next() ......... 81

2.3.11  map()、reduce()、filter() ......... 82

2.4  综合例题解析 ......... 86

习题 ......... 89

第3章 程序控制结构 ......... 91

3.1  条件表达式.........  91

3.2  选择结构 ......... 92

3.2.1  单分支选择结构 ......... 92

3.2.2  双分支选择结构.........  94

3.2.3  嵌套的选择结构.........  95

3.3  循环结构.........  99

3.3.1  for循环结构.........  99

3.3.2  while循环结构.........  102

3.3.3  break与continue语句......... 104

3.4  异常处理结构......... 106

3.4.1  常见异常表现形式......... 106

3.4.2  异常处理结构语法与应用.........  110

3.5  综合例题解析.........  114

习题.........  124

第4章 列表、元组.........  126

4.1  列表 ......... 126

4.1.1  列表创建与删除 ......... 127

4.1.2  列表元素访问.........  128

4.1.3  列表常用方法 ......... 129

4.1.4  列表对象支持的运算符.........  138

4.1.5  内置函数对列表的操作.........  141

4.2  列表推导式语法与应用.........  142

4.3  切片语法与应用.........  145

4.4  元组与生成器表达式.........  150

4.4.1  元组创建.........  150

4.4.2  元组方法与常用操作 ......... 153

4.4.3 元组与列表的区别.........  153

4.4.4 生成器表达式.........  154

4.5  序列解包 ......... 156

4.6  综合例题解析.........  158

习题 ......... 167

第5章 字典与集合.........  169

5.1 字典.........  169

5.1.1  创建字典的几种形式 ......... 169

5.1.2  字典常用方法.........  172

5.2  集合.........  180

5.2.1  创建集合的几种形式 ......... 181

5.2.2  集合常用方法.........  182

5.3  综合例题解析 ......... 186

习题 ......... 193

第6章 字符串 ......... 196

6.1  字符串方法及应用 ......... 196

6.1.1  字符串常用方法清单 ......... 196

6.1.2  字符串编码与字节串解码 ......... 200

6.1.3  字符串格式化 ......... 201

6.1.4  find()、rfind()、index()、rindex() ......... 206

6.1.5  split()、rsplit()、splitlines()、join() ......... 208

6.1.6  replace()、maketrans()、translate() ......... 209

6.1.7  center()、ljust()、rjust() ......... 212

6.1.8  字符串测试......... 212

6.1.9  strip()、rstrip()、lstrip()、removeprefix()、removesuffix().........  214

6.2  部分标准库对字符串的处理 ......... 215

6.2.1  标准库string.........  215

6.2.2  标准库zlib与数据压缩 ......... 216

6.2.3  标准库json与序列化.........  218

6.3  部分扩展库对字符串的处理.........  220

6.3.1  中英文分词 ......... 220

6.3.2  中文拼音处理.........  221

6.3.3  繁体中文与简体中文的互相转换.........  222

6.4  综合例题解析 ......... 222

习题 ......... 228

第7章 函数定义与使用.........  230

7.1  函数定义与调用 ......... 230

7.1.1  基本语法.........  231

7.1.2  递归函数定义与调用 ......... 232

7.1.3  函数嵌套定义 ......... 233

7.2  函数参数.........  234

7.2.1  位置参数.........  236

7.2.2  默认值参数.........  237

7.2.3  关键参数.........  239

7.2.4  可变长度参数.........  241

7.3  变量作用域.........  242

7.3.1  变量作用域的分类 ......... 242

7.3.2  作用域的搜索顺序 ......... 244

7.3.3  变量的可见性 ......... 247

7.4  lambda表达式语法与应用 ......... 247

7.5  生成器函数定义与使用.........  250

7.6  修饰器函数定义与使用 ......... 252

7.7  综合例题解析 ......... 255

习题.........  264

第8章 文件与文件夹操作 ......... 267

8.1  文本文件操作与二进制文件内容操作.........  267

8.1.1  内置函数open().........  268

8.1.2  文件对象常用方法 ......... 269

8.1.3  上下文管理语句with ......... 271

8.1.4  文件操作例题解析 ......... 271

8.2  文件级与文件夹级操作 ......... 273

8.2.1  标准库os、os.path、shutil中的常用成员 ......... 273

8.2.2  文件夹操作例题解析 ......... 277

习题 ......... 281

第9章 综合应用案例实践.........  283

9.1  tkinter应用开发 ......... 283

9.1.1  tkinter基础知识 ......... 283

9.1.2  tkinter应用开发综合案例 ......... 286

9.2  SQLite数据库操作 ......... 291

9.2.1  SQLite数据库基础 ......... 291

9.2.2  常用SQL语句 ......... 292

9.2.3  使用tkinter+SQLite开发个人通信录管理系统 ......... 294

9.3  Office文档操作 ......... 300

9.3.1  docx、xlsx、pptx文件操作基础 ......... 300

9.3.2  查找包含特定关键字的Word、Excel、PowerPoint文件 ......... 301

9.4  网络爬虫实战.........  303

9.4.1  requests基本操作 ......... 303

9.4.2  BeautifulSoup基本操作 ......... 305

9.4.3  爬取微信公众号历史文章 ......... 310

9.5  数据可视化实战.........  313

9.5.1  matplotlib扩展库基本操作.........  313

9.5.2  数据可视化案例 ......... 313

习题 ......... 317

参考文献 ......... 320

购书方式

保存下方图片

打开淘宝APP ,即可浏览

预计春节后才会在京东、当当、淘宝全面上架。

温馨提示:

关注微信公众号“Python小屋”,在公众号后台发送消息“大事记”可以查看董付国老师与Python有关的重要事件;发送消息“教材”可以查看董付国老师出版的Python系列教材(累计印刷超过120次)的适用专业详情;发送消息“历史文章”可以查看董付国老师推送的超过1000篇原创技术文章;发送消息“会议”或“培训”可以查看近期董付国老师的培训安排;发送消息“微课”可以查看董付国老师免费分享的超过500节Python微课视频;发送消息“课件”可以查看董付国老师免费分享的Python教学资源;发送消息“小屋刷题”可以下载“Python小屋刷题神器”,免费练习1318道客观题和187道编程题,题库持续更新;发送消息“编程比赛”了解Python小屋编程大赛详情。

新书推荐--《Python程序设计入门与实践》相关推荐

  1. 新书推荐 |《5G NR标准:下一代无线通信技术》

    新书推荐 <5G NR标准:下一代无线通信技术> 点击上图了解及购买 本书以3GPP 2018年9月制定的R15版5G商用标准为基础,详解5G NR标准技术规范和成因 ,爱立信5G标准专家 ...

  2. 5G NR 标准:下一代无线通信技术

    昨天有一篇混子曰的文章,用通俗易懂的漫画方式为大家讲解了5G到底是什么东西,经过翻阅文章,我们也了解了一二,但是你只表面的知道了5G这个概念,但是深入的话还是没有了解,所以下面将继续讲5G技术规范NR ...

  3. 5G NR标准 第1章 什么是5G

    5G NR标准 第1章 5G概述 在过去的40年里,全球已经经历了四代移动通信(如图1.1) 第一代移动通信是在1980年左右出现的,以模拟传输为基础,主要技术是北美开发的AMPS (Advanced ...

  4. 5G NR标准 第5章 NR概览

    5G NR标准 第5章 NR概览 图5.1概述了3GPP中NR开发的时间表. 基于3GPP版本14的研究项目,NR的技术工作于2016年春季启动,该项目基于2015年秋季的启动研讨会.在研究项目阶段, ...

  5. 5G NR标准 第4章 LTE概述

    5G NR标准 第4章 LTE概述 LTE的工作始于2004年底,其总体目标是提供一种仅关注分组交换数据的新型无线接入技术. LTE规范的第一个版本,即第8版,已于2008年完成,商业网络的运营于20 ...

  6. 5G NR标准 第3章 5G频谱

    5G NR标准 第3章 5G频谱 3.1 移动系统的频谱 不同频率的频带具有不同的特性. 由于传播特性,较低频率的频段非常适合在城市,郊区和乡村环境中进行广域覆盖部署. 较高频率的传播特性使它们更难用 ...

  7. 《5G NR标准:下一代无线通信技术》读书笔记——NR概述

    目录 二.NR概述 1.与LTE相比,NR好处 2.高频操作和频谱灵活性 3.极简设计 4.向前兼容 5.传输方案/部分带宽和帧结构 6.双工方式 7.低时延支持 8.调度和数据传输 9.控制信道 1 ...

  8. 《5G NR标准:下一代无线通信技术》读书笔记——LTE概述

    目录 一.LTE概述 1.频谱灵活性 1.1载波聚合 1.2授权辅助接入 2.多天线增强 2.1扩展的多天线传输 2.2多点协作和传输 2.3增强的控制信道结构 3.密集度.微蜂窝和异构部署 3.1中 ...

  9. 5G NR标准: 第20章 5G的演进

    第20章 5G的演进 NR 的第一个版本,第 15 版,侧重于对 eMBB 的基本支持,在某种程度上,URLLC.1 如前几章所述,第 15 版是为即将发布的 NR 未来发展构建的基础 . NR 演进 ...

  10. 5G NR标准 第13章 重传协议

    第13章 重传协议 通过无线信道的传输容易出错,例如,由于接收信号质量的变化. 在某种程度上,这种变化可以通过第 14 章中讨论的链路适配来抵消.但是,接收机噪声和不可预测的干扰变化无法抵消. 因此, ...

最新文章

  1. Linux Kernel TCP/IP Stack — L3 Layer — netfilter 框架 — conntrack(CT,连接跟踪)
  2. CSDN转载别人文章的详细步骤
  3. 某final神犇的工作感想
  4. 怎么把jad反编译放到Eclipse中
  5. oracle19c配置scott创建,oracle 19c创建sample schema-HR,OE,SH等等
  6. flume建立ElasticSearch索引时间的问题
  7. C++指针、空指针、野指针使用的一些总结
  8. Javaweb实现简易的留言板项目
  9. 大专计算机档案,大专档案自我鉴定(精选5篇)
  10. 服务器的安全配置技巧总结
  11. python美元和人民币双向兑换程序_Python:程序练习题(二)
  12. 这几个免费PPT模板、素材库,你绝对不能错过
  13. 三国志2霸王的大陆 武器大全
  14. oracle根据约束名查找具体信息,如是哪张表的哪个字段约束信息
  15. 开启和关闭远程Windows系统3389端口
  16. 解决word目录右侧页码大小不一致和不对齐的问题
  17. Denouncing Mafia
  18. kinect_试衣间(1)
  19. nyist 1204 魔法少女
  20. 初级计算机学习在哪能学,计算机初级培训的心得体会

热门文章

  1. 23-Vue和Element基础
  2. 【SSM+ElementUI】综合练习-Axios Mock EasyMock nodejs npm webpack vuecli restful 请求
  3. LVGL (3) 盒子模型
  4. 什么是莆田鞋,价格贵吗,质量怎么样
  5. springboot集成redis (Lettuce)
  6. 山东省有哪些计算机专业大学排名,山东人工智能专业大学排名
  7. uniapp 提供的手指事件
  8. java基础巩固-宇宙第一AiYWM:为了维持生计,多高(多线程与高并发)_Part9~整起(单双列集合们、ArrayList 的扩容机制、HashMap、ConcurrentHashMap )
  9. 子曾经曰过,别人对你的看法都是你表演给他们看的结果。
  10. CSS背景:背景色/背景图像/背景重复/背景附着/简写背景属性(一文搞懂)