前言

Python由Guido van Rossum于1989年底开始设计与开发,第一个公开发行版本发行于1991年。Python推出不久就迅速得到了各行业人士的青睐,经过30年的发展,Python已经渗透到计算机科学与技术、统计分析、移动终端开发、科学计算可视化、逆向工程与软件分析、图形编程与图像处理、人工智能、游戏设计与策划、网站开发、数据采集、大数据处理、密码学、系统运维、音乐编程、计算机辅助教育、医药辅助设计、天文信息处理、化学、生物等几乎所有专业和领域。著名搜索引擎Google的核心代码使用Python实现,迪士尼公司的动画制作与生成采用Python实现,大部分UNIX和Linux都内建了Python环境支持,豆瓣网使用Python作为主体开发语言进行网站架构和有关应用的设计与开发,网易大量网络游戏的服务器端代码超过70%采用Python进行设计与开发,易度的PaaA企业应用云端开发平台和百度云计算平台BAE也都大量采用了Python语言,美国宇航局使用Python实现了CAD/CAE/PDM库及模型管理系统,雅虎公司使用Python建立全球范围的站点群,微软公司的集成开发环境Visual Studio 2015开始默认支持Python语言,开源ERP系统Odoo完全采用Python语言开发,引力波数据是用Python进行处理和分析的,类似的案例数不胜数。

早在多年前Python就已经成为卡内基梅隆大学、麻省理工学院、加州大学伯克利分校、哈佛大学等国外很多大学计算机专业或非计算机专业的程序设计入门教学语言,目前国内也有不少学校的多个专业陆续开设了Python程序设计课程。2011年1月Python语言被TIOBE网站评为2010年度语言;2014年12月IEEE Spectrum推出的编程语言排行榜中,Python取得了第5位的好名次;2017年和2018年连续两年IEEE Spectrum把Python排在第一位;2019年7月TIOBE编程语言排行榜上Python跃居第3位,仅次于Java、C,已经成为脚本语言的标准。

Python是一门免费、开源的跨平台高级动态编程语言,支持命令式编程、函数式编程,完全支持面向对象程序设计,拥有大量功能强大的内置对象、标准库和扩展库以及众多狂热的支持者,使得各领域的科研人员、策划人员甚至管理人员能够快速实现和验证自己的思路与创意。在有些编程语言中需要编写大量代码才能实现的功能,在Python中直接调用内置函数或标准库方法即可实现。Python用户只需要把主要精力放在业务逻辑的设计与实现上,在开发效率和运行效率之间达到了完美的平衡,其精妙之处令人赞叹。

Python是一门快乐、优雅的语言。与C语言系列和Java等语言相比,Python大幅度降低了学习与使用的难度。Python易学易用,语法简洁清晰,代码可读性强,编程模式非常符合人类思维方式和习惯。经常浏览Python社区的优秀代码、Python标准库和扩展库文档甚至源代码,适当了解其内部工作原理,可以帮助读者编写出更加优雅的Python程序。

如果读者有其他程序设计语言的基础,那么在学习和使用Python的过程中,一定不要把用其他语言编程的习惯和风格带到Python中来,那样不仅会使得代码变得非常冗长、烦琐,还可能会严重影响代码的效率。应该尽量尝试从最自然、最简洁的角度出发去思考和解决问题,这样才能写出更加优雅、更加Pythonic的代码。

本书内容组织

对于Python程序员来说,熟练运用优秀、成熟的扩展库可以快速实现业务逻辑和创意,而Python语言基础知识和基本数据结构的熟练掌握则是理解和运用其他扩展库的必备条件,并且在实际开发中建议优先使用Python内置对象和标准库对象实现预定功能。本书前8章使用大量篇幅介绍Python编程基础知识,通过大量案例演示Python语言的精妙与强大。从第9章开始介绍大量标准库和扩展库在GUI编程、网络编程、移动终端编程、Windows系统编程、多线程与多进程编程、数据库编程、图形图像编程、逆向工程与软件分析、科学计算可视化、密码学编程等多个领域的应用。全书共18章,主要内容组织如下。

第1章基础知识。介绍如何选择Python版本,Python对象模型,数字、字符串等基本数据类型,运算符与表达式,内置函数,基本输入输出,Python程序文件名,Python代码编写规范等。

第2章Python序列。讲解序列常用的方法和基本操作,成员测试运算符,切片操作,列表基本操作与常用方法,列表推导式,元组与生成器推导式,序列解包,字典、集合基本操作与常用方法,字典推导式与集合推导式,以及如何使用列表实现栈、队列、二叉树、有向图等复杂数据结构。

第3章选择与循环。讲解Python选择结构、for循环与while循环,带else子句的循环结构,break和continue语句,选择结构与循环结构的综合运用。

第4章字符串与正则表达式。讲解字符串编码格式,字符串格式化、替换、分隔、连接、查找、排版等基本操作,正则表达式语法、正则表达式对象、子模式与Match对象,以及Python正则表达式模块re的应用。

第5章函数设计与使用。讲解函数的定义与使用,关键参数、默认值参数、长度可变参数等不同参数类型,全局变量与局部变量,参数传递时的序列解包,return语句,lambda表达式,以及函数式编程、生成器与可调用对象等若干高级话题。

第6章面向对象程序设计。讲解类的定义与使用,self与cls参数,类成员与实例成员,私有成员与公有成员,继承与派生,特殊方法与运算符重载等内容。

第7章文件操作。讲解文件操作基本知识,Python文件对象,文本文件读写操作,二进制文件读写与对象序列化,文件复制、移动、重命名、文件类型检测、文件完整性检查、压缩与解压缩、文件夹大小统计、文件夹增量备份、删除指定类型的文件和Office文件操作等内容。

第8章异常处理结构与程序调试、测试。讲解Python异常类层次结构与自定义异常类,多种不同形式的异常处理结构,使用IDLE和pdb模块调试Python程序,Python单元测试相关知识。

第9章GUI编程。讲解如何使用标准库tkinter进行GUI编程,通过大量实际案例演示基本组件的用法。

第10章网络程序设计。讲解计算机网络基础知识,TCP、UDP编程,网页内容读取与网页爬虫。

第11章安卓平台的Python编程。介绍QPython和QPython3开发环境的应用,讲解安卓平台的Python程序设计。

第12章Windows系统编程。讲解注册表编程、GUI编程、系统版本判断,将Python程序打包为exe可执行文件,在Python中调用外部程序,以及Python在系统运维中的应用。

第13章多线程与多进程编程。讲解Python标准库threading和multiprocessing在多线程编程与多进程编程中的应用,以及多线程与多进程之间的数据共享与同步控制。

第14章数据库编程。介绍SQLite数据库及其相关概念,Connection对象、Cursor对象、Row对象,以及使用Python扩展库操作Access、MS SQL Server、MySQL等数据库。

第15章多媒体编程。讲解扩展库PyOpenGL在计算机图形学编程中的应用,扩展库pillow在图像编程中的应用,pygame、SciPy在音乐编程中的应用,opencv在视频处理中的应用以及speech在语音识别中的应用。

第16章逆向工程与软件分析。介绍逆向工程与软件分析的原理和相关插件,IDAPython与Immunity Debugger在软件分析中的应用,以及Windows平台软件调试原理。

第17章数据分析、科学计算与可视化。讲解扩展库NumPy、SciPy、Matplotlib在科学计算与可视化领域的应用,以及扩展库pandas与标准库statistics在数据处理、统计与分析中的应用。

第18章密码学编程。以pycryptodome、rsa、hashlib等模块为主讲解安全哈希算法、对称密钥密码算法DES与AES,以及非对称密钥密码算法RSA与DSA的应用。

本书信息量大,知识点紧凑,案例丰富,实用性强。全书100多个涉及不同行业领域的实用案例,没有多余的文字、程序输出结果或软件安装截图,充分利用宝贵的篇幅来讲解尽可能多的知识。本书作者具有20年程序设计教学经验,讲授过汇编语言、C/C++/C#、Java、PHP、Python等多门程序设计语言,编写过大量的应用程序。本书内容结合作者多年教学与开发过程中积累的许多经验和案例,并巧妙地糅进了相应的章节。

本书对Python内部工作原理进行了一定深度的剖析,95%以上的案例均使用Python 3.5、3.6和3.7实现,代码同样适用于Python 3.8以及更高版本实现。书中适当介绍了Python代码优化和安全编程的有关知识,可以满足不同层次读者的需要。

本书适用读者

本书可以作为(但不限于):

(1) 计算机专业本科生Python程序设计教材或研究生必读书目。本科生建议72学时以上,讲授本书全部章节。

(2) 数字媒体技术、软件工程、网络工程、信息安全、通信工程、电子、自动化及其他工科专业本科生或研究生Python程序设计教材。建议64学时,讲授前9章,再根据专业特点与需要在其他章节中选讲3~5章。

(3) 会计、经济、金融、管理、心理学、统计以及其他非工科专业研究生或本科生Python程序设计教材。建议64学时,讲授前8章中不带星号的内容,第9章的案例选讲3~4个,再根据专业特点与需要在其他章节中选讲2~3章,其余章节由学生根据兴趣自学。

(4) 非计算机相关专业本科生公共基础课Python程序设计教材。建议48学时并边讲边练,讲授前8章中不带星号的章节,再根据需要在其他章节中选讲2~3章,其余章节可由学生根据兴趣自学。

(5) 专科院校或职业技术学院Python程序设计教材。建议96学时,讲授前9章中不带星号的内容以及第10、13、14、17章。

(6) Python培训用书。建议时间为一周,讲授前8章,再根据需要选讲3~5章。

(7) 具有一定Python基础的读者进阶首选学习资料。

(8) 涉及Python开发的程序员、策划人员、科研人员和管理人员阅读书目。

(9) 打算利用业余时间学习一门快乐的程序设计语言并编写几个小程序来娱乐的读者首选学习资料。

(10) 少数对编程具有浓厚兴趣和天赋的中学生课外阅读资料。

教学资源

本书提供全套教学课件、源代码、课后习题答案与分析、考试题库以及教学大纲,配套资源可以登录清华大学出版社官方网站(www.tup.com.cn)下载或与作者联系索取,作者电子邮箱地址为dongfuguo2005@126.com,微信公众号为“Python小屋”。

由于时间仓促,作者水平有限,书中难免存在纰漏,不足之处还请同行指正并通过作者联系方式进行反馈与交流。作者将不定期在公众号和微信发布和更新勘误表,并通过QQ和微信答复读者的疑问。

感谢

首先感谢父母的养育之恩,在当年那么艰苦的条件下还坚决支持我读书,没有让我像其他同龄的孩子一样辍学。感谢姐姐、姐夫多年来对我的爱护以及在老家对父母的照顾,感谢善良的弟弟、弟媳在老家对父母的照顾,正是有了你们,我才能在远离家乡的城市安心工作。感谢我的妻子在生活中对我的大力支持,也感谢懂事的女儿在我工作的时候能够在旁边安静地读书而尽量不打扰我,在定稿前和妈妈一起帮我阅读全书并检查出了几个错别字。

感谢每一位读者,感谢您在茫茫书海中选择了本书,衷心祝愿您能够从本书中受益,学到您需要的知识!同时也期待每一位读者的热心反馈,随时欢迎您指出书中的不足!

本书在编写出版过程中得到清华大学出版社的大力支持和帮助,在此表示衷心的感谢。

董付国定稿于山东烟台

2020年4月

more >

python程序设计教程 清华大学出版社下载-清华大学出版社-图书详情-《Python程序设计(第3版)》...相关推荐

  1. python教程下载地址-最新python实战教程网盘下载地址

    原标题:最新python实战教程网盘下载地址 Python在程序员中始终流行:40%的受访者都会学习,44%的受访者每周都会学习.目前技术领域最热点的技术排名,排在前一位的是:Python.Pytho ...

  2. python123io如何编辑_计算机二级python学习教程(1) 教大家如何学习python

    本来PHP还学艺不精,又报了计算机二级Python的考试,还有一个半月的时间,抓紧买了高教社的这两本书,今天正式开始学习这个语言,虽然没法和世界上最好的语言PHP相提并论,但是也值得一学. 虽然先看蓝 ...

  3. python零基础电子书免费下载-零基础入门学习Python PDF 扫描版

    给大家带来的一篇关于Python编程相关的电子书资源,介绍了关于Python.零基础.入门学习方面的内容,本书是由清华大学出版社出版,格式为PDF,资源大小59.3 MB,小甲鱼编写,目前豆瓣.亚马逊 ...

  4. python五角星教程_绘制五角星_清华尹成python入门教程_少儿编程视频-51CTO学院

    此课程与<清华编程高手.尹成.带你实战python入门>大体相同,只需购买其中的一门课程. 本课程由清华大学尹成老师录制,课程的特色在于讲解原理的同时引入了每个程序员都热衷的黑客技术.py ...

  5. python入门教程完整版(懂中文就能学会)-Python入门教程完整版(懂中文就能学会)...

    不过小编的内心是强大的,网友虐我千百遍,我待网友如初恋,因为今天又给大家带来了干货,Python入门教程完整版,完整版啊!完整版! 言归正传,小编该给大家介绍一下这套教程了,希望每个小伙伴都沉迷学习, ...

  6. python入门教程完整版(懂中文就能学会)-Python入门教程完整版400集(懂中文就能学会)快来带走...

    为了感谢大家的关注与支持, 小编今天给大家分享一套高老师的python400集视频教程,里面包含入门进阶,源码,实战项目等等,,不管你是正在学习中,还是想要学习的,通通来吧 肯定不会让你失望.活动仅限 ...

  7. python学习教程之作为一个新手小白如何学习python?

    这是一篇 Python 入门指南,针对那些没有任何编程经验,从零开始学习 Python 的同学.不管你学习的出发点是兴趣驱动.拓展思维,还是工作需要.想要转行,都可以此文作为一个参考.在这个信息爆炸的 ...

  8. 以python入门教程新世界-国外旅行也不忘学习Python:Python 操作列表001

    Python从小白到入门 ~ Part 4 操作列表 001 Python是一门杰出的语言,值得你去学习,咱们现在就开始吧.--<Python编程从入门到实践>P44-P50 人生--这个 ...

  9. python windows教程_python从入门到精通 windows安装python图文教程

    python的官方介绍是: python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程.python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使 ...

最新文章

  1. http://m.blog.csdn.net/article/details?id=2630620
  2. vscode新建html,没有模板
  3. 08、MySQL—字符串型
  4. 交互神器 Facebook Origami
  5. python第三方库文件传输助手_python实现文件助手中查看微信撤回消息
  6. 通过ajax提交到url路由
  7. Winform Echarts 显示百度地图的用法(3)
  8. java泛型概念与通配符含义初探
  9. 国产高分系列卫星平台介绍
  10. 画java类图_java UML类图的使用
  11. 桌面版 Linux 为什么打不过 Window?Linus 现身说法
  12. 什么是网站PR值?如何提高网站pr值?网站pr值查询!
  13. [Go] String型常用操作
  14. Python + Excel 办公自动化 01 —— 硬菜马上就来
  15. java计算机毕业设计互联网校园家教兼职平台源码+mysql数据库+系统+lw文档+部署
  16. Unity -- 预制体与变体
  17. Selenium WebDriver的多浏览器测试
  18. Windows与Mac获取文件绝对路径的快捷键
  19. 2021年政府补助申请流程
  20. 逆序输出三位数python_逆的部首|逆的拼音|逆的组词|逆的意思 - 查字典

热门文章

  1. 女命論與丈夫的婚姻運
  2. Transformers 示例 | 六
  3. 基于Python 实现自动组卷评卷考试系统【100010913】
  4. qt connect函数_小白学QT 使用VS 给 qt 添加信号槽
  5. 【软件网每日新闻播报│第9-19期】
  6. 华云数据信创云基座荣获“星光江苏”数字经济创新产品优胜奖
  7. 【干货】Chrome插件(扩展)开发全攻略(转载)
  8. mysql的最左匹配原则
  9. 守护大数据安全的“福尔摩斯”
  10. PR视效素材包 PR视频调色LUTs光效迭加视频素材