分享

我给你整理一套2019完整的Python学习书籍,请你带走

 cxm54666 2019-06-19

AlphaGo 都在使用的 Python 语言,是最接近 AI 的编程语言。

教育部考试中心近日发布了“关于全国计算机等级(NCRE)体系调整”的通知,决定自2018年3月起,在全国计算机二级考试中加入了“Python语言程序设计”科目。

9个月前,浙江省信息技术课程改革方案已经出台,Python确定进入浙江省信息技术教材,从2018年起浙江省信息技术教材编程语言将会从vb更换为Python。

小学生都开始学Python了,天呐撸,学习Python看完这些准没错。

安利一波书单

Python入门

《Python编程初学者指南》

作者: 【美】Michael Dawson

《Python编程初学者指南》尝试以轻松有趣的方式来帮助初学者掌握Python语言和编程技能。

全书共12章,每一章都会用一个完整的游戏来演示其中的关键知识点,并通过编写好玩的小软件这种方式来学习编程,引发读者的兴趣,降低学习的难度。

每章最后都会对该章的知识点进行小结,还会给出一些小练习让读者试试身手。作者很巧妙的将所有编程知识嵌入到了这些例子中,真正做到了寓教于乐。

像计算机科学家一样思考Python》

作者: 【美】Allen B. Downey

本书按照培养读者像计算机科学家一样的思维方式的思路来教授Python语言编程。全书贯穿的主体是如何思考、设计、开发的方法,而具体的编程语言,只是提供一个具体场景方便介绍的媒介。

并不是一本介绍语言的书,而是一本介绍编程思想的书。和其他编程设计语言书籍不同,它不拘泥于语言细节,而是尝试从初学者的角度出发,用生动的示例和丰富的练习来引导读者渐入佳境。

Python进阶

《Python核心编程(第3版)》

作者: 【美】Wesley Chun(卫斯理 春)

本书是经典畅销图书《Python核心编程(第二版)》的全新升级版本,总共分为3部分。第1部分讲解了Python的一些通用应用,包括正则表达式、网络编程、Internet客户端编程、多线程编程、GUI编程、数据库编程、Microsoft Office编程、扩展Python等内容。

第2部分讲解了与Web开发相关的主题,包括Web客户端和服务器、CGI和WSGI相关的Web编程、Diango Web框架、云计算、高级Web服务。第3部分则为一个补充/实验章节,包括文本处理以及一些其他内容。

本书适合具有一定经验的Python开发人员阅读。

Python机器学习——预测分析核心算法》

作者: 【美】Michael Bowles(鲍尔斯)

在学习和研究机器学习的时候,面临令人眼花缭乱的算法,机器学习新手往往会不知所措。本书从算法和Python 语言实现的角度,帮助读者认识机器学习。

本书专注于两类核心的“算法族”,即惩罚线性回归和集成方法,并通过代码实例来展示所讨论的算法的使用原则。全书共分为7 章,详细讨论了预测模型的两类核心算法、预测模型的构建、惩罚线性回归和集成方法的具体应用和实现。

《Python机器学习实践指南》

作者: 【美】Alexander T. Combs

机器学习是近年来渐趋热门的一个领域,同时Python 语言经过一段时间的发展也已逐渐成为主流的编程语言之一。本书结合了机器学习和Python 语言两个热门的领域,通过利用两种核心的机器学习算法来将Python 语言在数据分析方面的优势发挥到极致。

全书共有10 章。第1 章讲解了Python 机器学习的生态系统,剩余9 章介绍了众多与 机器学习相关的算法,包括各类分类算法、数据可视化技术、推荐引擎等,主要包括机器学习在公寓、机票、IPO 市场、新闻源、内容推广、股票市场、图像、聊天机器人和推荐引擎等方面的应用。

《精通Python自然语言处理》

作者: 【印度】Deepti Chopra , Nisheeth Joshi , Iti Mathur

自然语言处理是计算语言学和人工智能之中与人机交互相关的领域之一。

本书是学习自然语言处理的一本综合学习指南,介绍了如何用Python实现各种NLP任务,以帮助读者创建基于真实生活应用的项目。

全书共10章,分别涉及字符串操作、统计语言建模、形态学、词性标注、语法解析、语义分析、情感分析、信息检索、语篇分析和NLP系统评估等主题。本书适合熟悉Python语言并对自然语言处理开发有一定了解和兴趣的读者阅读参考。

Python数据科学指南》

作者: 【印度】Gopi Subramanian(萨伯拉曼尼安)

60多个实用的开发技巧,帮你探索Python及其强大的数据科学能力

Python作为一种高级程序设计语言,凭借其简洁、易读及可扩展性日渐成为程序设计领域备受推崇的语言,并成为数据科学家的首选之一。本书详细介绍了Python在数据科学中的应用,包括数据探索、数据分析与挖掘、机器学习、大规模机器学习等主题。

每一章都为读者提供了足够的数学知识和代码示例来理解不同深度的算法功能,帮助读者更好地掌握各个知识点。本书内容结构清晰,示例完整,无论是数据科学领域的新手,还是经验丰富的数据科学家都将从中获益。

《用Python写网络爬虫》

作者: 【澳】Richard Lawson(理查德 劳森)

本书讲解了如何使用Python来编写网络爬虫程序,内容包括网络爬虫简介,从页面中抓取数据的三种方法,提取缓存中的数据,使用多个线程和进程来进行并发抓取,如何抓取动态页面中的内容,与表单进行交互,处理页面中的验证码问题,以及使用Scarpy和Portia来进行数据抓取,并在最后使用本书介绍的数据抓取技术对几个真实的网站进行了抓取,旨在帮助读者活学活用书中介绍的技术。

本书适合有一定Python编程经验,而且对爬虫技术感兴趣的读者阅读。

《贝叶斯思维:统计建模的Python学习法》

作者: 【美】Allen B. Downey

这本书帮助那些希望用数学工具解决实际问题的人们,仅有的要求可能就是懂一点概率知识和程序设计。

而贝叶斯方法是一种常见的利用概率学知识去解决不确定性问题的数学方法,对于一个计算机专业的人士,应当熟悉其应用在诸如机器翻译,语音识别,垃圾邮件检测等常见的计算机问题领域。

Python自然语言处理》

作者: 【美】Steven Bird , Ewan Klein , Edward Loper

自然语言处理(Natural Language Processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能够实现人与计算机之间用自然语言进行有效通信的各种理论和方法,涉及所有用计算机对自然语言进行的操作。

《Python自然语言处理》是自然语言处理领域的一本实用入门指南,旨在帮助读者学习如何编写程序来分析书面语言。

《Python自然语言处理》基于Python编程语言以及一个名为NLTK的自然语言工具包的开源库,但并不要求读者有Python编程的经验。全书共11章,按照难易程度顺序编排。

第1章到第3章介绍了语言处理的基础,讲述如何使用小的Python程序分析感兴趣的文本信息。第4章讨论结构化程序设计,以巩固前面几章中介绍的编程要点。第5章到第7章介绍语言处理的基本原理,包括标注、分类和信息提取等。

第8章到第10章介绍了句子解析、句法结构识别和句意表达方法。第11章介绍了如何有效管理语言数据。后记部分简要讨论了NLP领域的过去和未来。

本书的实践性很强,包括上百个实际可用的例子和分级练习。可供读者用于自学,也可以作为自然语言处理或计算语言学课程的教科书,还可以作为人工智能、文本挖掘、语料库语言学等课程的补充读物。

Python数据分析》

作者: 【印尼】Ivan Idris

Python是一种多范型编程语言,既适用于面向对象的应用开发,又适合函数式设计模式。Python已经成为数据科学家进行数据分析、可视化以及机器学习的一种理想编程语言,它能帮助你快速提升工作效率。

本书将会带领新手熟悉Python数据分析相关领域的方方面面,从数据检索、清洗、操作、可视化、存储到高级分析和建模。

同时,本书着重讲解一系列开源的Python模块,诸如NumPy、SciPy、matplotlib、pandas、IPython、 Cython、scikit-learn和NLTK等。此外,本书还介绍了数据可视化、信号处理、时间序列分析、数据库、预测性分析和机器学习等主题。通过阅读本书,你将华丽变身数据分析高手。

前面我们讲完了文件,下面我们来谈谈Python的异常处理,我们在写python程序的时候,经常会出现一些异常情况,一旦出现错误,程序就会终止执行。

我总结了9个非常容易碰到的异常错误,我们一起来看一下

  • 有一些是语法上的错误,比如代码不符合解释器或者编译器的语法

  • 有一些是参数输入错误,比如应该输入整数,结果却输入一个字符串

  • 有一些是逻辑上的漏洞,比如不合法的输入或者算法上计算有些问题

  • 有一些是程序运行错误,比如你要读入文件,而传进来的文件名不存在

1、变量或者函数名拼写错误:NameError

访问一个不存在的变量,比如你打印一个从来没有定义过的变量或者你把函数名写错了

language='Python'

print('Welcome to study:'+Language)

NameError: name 'Language' is not defined

price = ruond(4.2)

print price

NameError: name 'ruond' is not defined

2、方法名拼写错误:AttributeError

访问一些未知的对象属性,比如字符串里面一些内置函数名我们拼错

line='Python is easy'

print line.upperr()

AttributeError: 'str' object has no attribute 'upperr'

3、列表越界:IndexError

比如我们访问list的时候,索引超过了列表的最大索引

names=['XiaoMing','Lao Wang','Zhang li']

print names[3]

IndexError: list index out of range

4、忘记在if/for/while/def 声明末尾添加 :SyntaxError

有的时候写程序写着写着会忘记if/elif/else/for/while/def的末尾加冒号

score=95

if score >90

print 'very good'

SyntaxError: invalid syntax

5、在循环语句中忘记调用len():TypeError

有时想通过索引来迭代一个list内元素,for循环中我们经常使用range()函数,但是要记得加入len()而不是直接返回这个列表

companies=['Google','Apple','Facebook']

for i in range(companies):

print i

TypeError: range() integer end argument expected, got list.

range()函数要用len()取列表的长度

for i in range(len(companies)):

print i

6、尝试连接非字符串值与字符串:TypeError

有时想把字符串和数值连接起来一起输入,但是会有问题:

score=82

print 'Jack score is: '+score

TypeError: cannot concatenate 'str' and 'int' objects

print 'Jack score is: '+str(score)

Jack score is: 82

7、访问一未初始化的本地变量:UnboundLocalError

在变量使用的时候特别是在函数内部和外部用相同的变量名,经常会犯错不信你看:

x = 10

def func():

print x

x = 1

func()

print 'Value of x is', x

UnboundLocalError: local variable 'x' referenced before assignment

注意在函数func()中x是局部变量,因为在函数内部又对x进行了赋值为1,这样全局的x和func()中x就不是一个变量,要么改个名字或者x=1删掉,要么就用加上global,表示func()中的x是用的全局的x

x = 10

def func():

global x

print x

x=1

func()

print 'Value of x is', x

Value of x is 1

8、打开一个不存在的文件:IOError

有的时候我们会访问一个文件,或者定义函数去传入一个文件名,然后去读取

很可能这个文件名根本不存在:

f=open('price.txt')

IOError: [Errno 2] No such file or directory: 'price.txt'

9、除数为0:ZeroDivisionError

我们在运算一些数值的时候,可能会去引入除数是0的情况,

比如传入一个列表,有可能这个列表中含有0,那么在除的时候就会出错

nums=[10,20,0,30]

for n in nums:

print 100/n

ZeroDivisionError: division by zero

好了9种常见的异常错误就讲到这里啦,希望能给初学者一些启发,若有什么不懂的,也可以留言跟我探讨交流。

福利来袭 | 免费领取书籍资料

如果想获取这些学习资料点击转发分享出去之后私信小编(资料)即可获得!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多