Python程序员将使用这些有用的单行程序来提高他们的计算机科学技能。
Python单行程序将教会您如何阅读和编写“单行程序”:将有用功能的简明语句封装到一行代码中。您将学习如何系统地解包和理解任何一行Python代码,并像专家一样编写雄辩、强大的压缩Python。
本书共分五章,内容包括技巧和技巧、正则表达式、机器学习、核心数据科学主题和有用的算法。对一行程序的详细解释将介绍关键的计算机科学概念,并提高您的编码和分析技能。您将了解高级Python特性,如列表理解、切片、lambda函数、正则表达式、映射和缩减函数以及切片分配。您还将学习如何:
•利用数据结构来解决现实世界的问题,比如使用布尔索引来查找污染水平高于平均水平的城市
•使用NumPy基础,如数组、形状、轴、类型、广播、高级索引、切片、排序、搜索、聚合和统计
•计算多维数据数组的基本统计量和无监督学习的K-Means算法
•使用分组和命名组、负查找头、转义字符、空白、字符集(和负字符集)和贪婪/非贪婪操作符创建更高级的正则表达式
•了解广泛的计算机科学主题,包括字谜、回文、超集、排列、阶乘、质数、斐波纳契数、混淆、搜索和算法排序
在本书的最后,您将了解如何以最精炼的方式编写Python,并仅用一行代码就创建简洁、漂亮的“Python艺术”片段。
首先加速介绍R生态系统、编程语言和工具,包括R脚本和RStudio。通过使用许多例子和项目,这本书教你如何将数据导入R,以及如何使用R处理这些数据。一旦基础扎实,《实用R 4》的其余部分将深入具体的项目和例子,从使用R和LimeSurvey运行和分析调查开始。接下来,您将使用R和MouselabWeb执行高级统计分析。然后,您将看到在没有统计信息的情况下R如何工作,包括如何使用R自动化数据格式化、操作、报告和自定义函数。
本书的最后一部分讨论了在服务器上使用R;您将使用R构建一个脚本,该脚本可以运行RStudio服务器并监视报表源的更改,以便在发生更改时向用户发出警报。这个项目包括定期电子邮件提醒和推送通知。最后,您将使用R创建一个定制的个人最重要信息的每日纲要报告,例如天气报告、每日日历、待办事项等等。这演示了如何自动化这样一个过程,以便用户每天早上导航到相同的web页面并获得更新的报告。
你将学到什么
这本书是给谁的
机器学习已经成为许多商业应用和研究项目中不可或缺的一部分,但这一领域并不仅限于拥有广泛研究团队的大公司。如果您使用Python,即使是初学者,这本书也会教你构建自己的机器学习解决方案的实用方法。今天,有了所有可用的数据,机器学习应用程序只受限于你的想象力。
您将学习使用Python和scikit-learn库创建成功的机器学习应用程序所需的步骤。两位作者安德烈亚斯•穆勒(Andreas Muller)和萨拉•圭多(Sarah Guido)关注的是使用机器学习算法的实践层面,而不是背后的数学。熟悉NumPy和matplotlib库将有助于您从本书获得更多信息。
通过这本书,你会学到 :
从设计和原型设计到测试、部署和维护,Python在许多方面都很有用,它一直是当今最流行的编程语言之一。这本实用的书的第三版提供了对语言的快速参考——包括Python 3.5、2.7和3.6的突出部分——它庞大的标准库中常用的区域,以及一些最有用的第三方模块和包。
本书非常适合具有一些Python经验的程序员,以及来自其他编程语言的程序员,它涵盖了广泛的应用领域,包括web和网络编程、XML处理、数据库交互和高速数字计算。了解Python如何提供优雅、简单、实用和强大功能的独特组合。
这个版本包括:
Python是一种多范式编程语言,已经成为数据科学家进行数据分析、可视化和机器学习的首选语言。有没有想过如何成为有效处理数据分析问题的专家,解决这些问题,并从数据中提取所有可用信息?好了,别再找了,这就是你要的书!
通过这个全面的指南,您将探索数据,并以一种有意义的方式展示统计分析的结果和结论。您将能够快速准确地执行实际操作的排序、缩减和后续分析,并充分理解数据分析方法如何支持业务决策。
您将首先了解Python中可用的数据分析工具,然后探索用于识别数据模式的统计模型。渐渐地,您将使用Python、panda和SciPy回顾统计推断。在此之后,我们将集中于使用计算工具执行回归,您将了解如何用算法的方式识别数据中的集群。最后,我们将深入探讨使用贝叶斯方法量化因果关系的高级技术,您将发现如何使用Python的工具进行监督机器学习。
你会学到什么
改进您的编程技术和方法,成为一个更有生产力和创造性的Python程序员。本书探索了一些概念和特性,这些概念和特性不仅将改进您的代码,而且还将帮助您理解Python社区,并对Python哲学有深入的了解和详细的介绍。
专业的Python 3,第三版给你的工具写干净,创新的代码。它首先回顾了一些核心的Python原则,这些原则将在本书后面的各种概念和示例中进行说明。本书的前半部分探讨了函数、类、协议和字符串的各个方面,描述了一些技术,这些技术可能不是常见的知识,但它们共同构成了坚实的基础。后面的章节涉及文档、测试和应用程序分发。在此过程中,您将开发一个复杂的Python框架,该框架将整合在本书中所学到的思想。
这个版本的更新包括Python 3中迭代器的角色、用Scrapy和BeautifulSoup进行web抓取、使用请求调用没有字符串的web页面、用于分发和安装的新工具等等。在本书的最后,您将准备好部署不常见的特性,这些特性可以将您的Python技能提升到下一个级别。
你将学习
这本书是给谁看的 熟悉Python的中级程序员,希望提升到高级水平。您应该至少编写了一个简单的Python应用程序,并且熟悉基本的面向对象方法、使用交互式解释器和编写控制结构。
Python算法,第二版解释了Python方法的算法分析和设计。本书由《初级Python》的作者Magnus Lie Hetland撰写,主要关注经典算法,但也对基本的算法解决问题技术有了深入的理解。
这本书涉及一些最重要和最具挑战性的领域的编程和计算机科学在一个高度可读的方式。它涵盖了算法理论和编程实践,演示了理论是如何反映在真实的Python程序中的。介绍了Python语言中内置的著名算法和数据结构,并向用户展示了如何实现和评估其他算法和数据结构
Python 官方教程(https://docs.python.org/3/tutorial/)的开头是这样写的:“Python 是一门既容易上手又强大的编程语言。”这句话本身并无大碍,但需要注意的是,正因为它既好学又好用,所以很多Python程序员只用到了其强大功能的一小部分。
只需要几个小时,经验丰富的程序员就能学会用 Python 写出实用的程序。然而随着这最初高产的几个小时变成数周甚至数月,在那些先入为主的编程语言的影响下,开发者们会慢慢地写出带着“口音”的 Python 代码。即便 Python 是你的初恋,也难逃此命运。因为在学校里,抑或是那些入门书上,教授者往往会有意避免只跟语言本身相关的特性。
另外,向那些已在其他语言领域里有了丰富经验的程序员介绍 Python 的时候,我还发现了一个问题:人们总是倾向于寻求自己熟悉的东西。受到其他语言的影响,你大概能猜到Python会支持正则表达式,然后就会去查阅文档。但是如果你从来没见过元组拆包(tuple unpacking),也没听过描述符(descriptor)这个概念,那么估计你也不会特地去搜索它们,然后就永远失去了使用这些Python独有的特性的机会。这也是本书试图解决的一个问题。
第一部分
第一部分只有单独的一章,讲解的是 Python 的数据模型(datamodel),以及如何为了保证行为一致性而使用特殊方法(比如__repr__),毕竟 Python 的一致性是出了名的。其实整本书几乎都是在讲解 Python 的数据模型,第 1 章算是一个概览。
第二部分
第二部分包含了各种集合类型:序列(sequence)、映射(mapping)和集合(set),另外还提及了字符串(str)和字节序列(bytes)的区分。说起来,最后这一点也是让亲者(Python 3 用户)快,仇者(Python 2 用户)痛的一个关键,因为这个区分致使 Python 2代码迁移到 Python 3 的难度陡增。第二部分的目标是帮助读者回忆起Python 内置的类库,顺带解释这些类库的一些不太直观的地方。具体的例子有 Python 3 如何在我们观察不到的地方对 dict 的键重新排序,或者是排序有区域(locale)依赖的字符串时的注意事项。为了达到本部分的目标,有些地方的讲解会比较大而全,像序列类型和映射类型的变种就是这样;有时则会写得很深入,比方说我会对dict 和 set 底层的散列表进行深层次的讨论。
第三部分
如何把函数作为一等对象(first-order object)来使用。第三部分首先会解释前面这句话是什么意思,然后话题延伸到这个概念对那些被广泛使用的设计模型的影响,最后读者会看到如何利用闭包(closure)的概念来实现函数装饰器(function decorator)。这一部分的话题还包括Python 的这些基本概念:可调用(callable)、函数属性(functionattribute)、内省(introspection)、参数注解(parameter annotation)和Python 3 里新出现的 nonlocal 声明。
第四部分
到了这里,书的重点转移到了类的构建上面。虽然在第二部分里的例子里就有类声明(class declaration)的出现,但是第四部分会呈现更多的类。和任何面向对象语言一样,Python 还有些自己的特性,这些特性可能并不会出现在你我学习基于类的编程的语言中。这一部分的章节解释了引用(reference)的原理、“可变性”的概念、实例的生命周期、
如何构建自定义的集合类型和 ABC、多重继承该怎么理顺、什么时候应该使用操作符重载及其方法。
第五部分
Python 中有些结构和库不再满足于诸如条件判断、循环和子程序(subroutine)之类的顺序控制流程,第五部分的笔墨会集中在这些构造和库上。我们会从生成器(generator)起步,然后话题会转移到上下文管理器(context manager)和协程(coroutine),其中会涵盖新增的功能强大但又不容易理解的 yield from 语法。这一部分以并发性和面向事件的 I/O 来结尾,其中跟并发性相关的是 collections.futures这个很新的包,它借助 futures 包把线程和进程的概念给封装了起
来;而跟面向事件 I/O 相关的则是 asyncio,它的背后是基于协程和yield from 的 futures 包。
第六部分
第六部分的开头会讲到如何动态创建带属性的类,用以处理诸如JSON 这类半结构化的数据。然后会从大家已经熟悉的特性(property)机制入手,用描述符从底层来解释 Python 对象属性的存取。同时,函数、方法和描述符的关系也会被梳理一遍。第六部分会从头至尾地实现一个字段验证器,在这个过程中我们会遇到一些微妙的问题,然后在最后一章中就自然引出像类装饰器(class decorator)和元类(metaclass)这些高级的概念。
本书通过提供真实的案例研究和示例,为使用Python库进行机器学习提供了坚实的基础。它涵盖了诸如机器学习基础、Python入门、描述性分析和预测分析等主题。包括高级机器学习概念,如决策树学习、随机森林、增强、推荐系统和文本分析。这本书在理论理解和实际应用之间采取了一种平衡的方法。所有的主题都包括真实世界的例子,并提供如何探索、构建、评估和优化机器学习模型的逐步方法。
本书是为那些对数据科学感兴趣的Python程序员编写的。唯一的先决条件是Python的基本知识。不需要有使用复杂算法的经验。数学背景不是必须的。读完这本书的业余爱好者将获得获得第一份高薪数据科学工作所必需的技能。这些技能包括:
开放式解决问题的能力对于数据科学职业来说是必不可少的。不幸的是,这些能力不能通过阅读来获得。要成为一个问题解决者,你必须坚持解决困难的问题。带着这种想法,我的书围绕着案例研究展开:以真实世界为模型的开放式问题。案例研究范围从在线广告分析到使用新闻数据跟踪疾病暴发。
简介:
探索用Python编写代码的正确方法。这本书提供的技巧和技术,你需要生产更干净,无错误,和雄辩的Python项目。
要获得更好的代码,首先要理解对代码进行格式化和编制文档以获得最大可读性的重要性,利用内置的数据结构和Python字典来提高可维护性,并使用模块和元类来有效地组织代码。然后,您将深入了解Python语言的新特性,并学习如何有效地利用它们。接下来,您将解码关键概念,如异步编程、Python数据类型、类型提示和路径处理。学习在Python代码中调试和执行单元测试和集成测试的技巧,以确保您的代码可以投入生产。学习旅程的最后一段为您提供了版本管理、实时代码管理和智能代码完成的基本工具。 在阅读和使用这本书之后,您将熟练地编写干净的Python代码,并成功地将这些原则应用到您自己的Python项目中。
目录:
作者:
Sunil Kapil在过去十年一直从事软件行业,用Python和其他几种语言编写产品代码。 他曾是一名软件工程师,主要从事网络和移动服务的后端工作。他开发、部署并维护了数百万用户喜爱和使用的从小型到大型的生产项目。他与世界各地知名软件公司的大小团队在不同的专业环境中完成了这些项目。他也是开源的热情倡导者,并不断为Zulip Chat和Black等项目贡献力量。Sunil经常在各种会议上发表关于Python的演讲。