《Python高手修炼之道:数据处理与机器学习实战》前言

本书是作者十余年Python使用经验的结晶,旨在帮助Python初学者扎实基础,规划正确学习路径。书中涵盖基础语法、科学计算、数据处理和机器学习,强调实践操作,鼓励读者动手验证并理解Python编程。适合有一定编程基础或完全新手的读者,同时也适合作为有经验程序员的参考书。
摘要由CSDN通过智能技术生成

前言

这既不是一本通常意义上的Python编程语言的教科书,也不是各种工具包和模块的文档集合,而是一位老程序员十余年Python使用经验的总结。我从2007年开始接触Python这门编程语言,从2009年至今单一使用Python应对所有的开发工作。回顾这一段历程,遇到过无数困难,我也曾经迷茫过、困惑过。写作本书正是为了帮助像当年的我一样困惑的Python初学者走出困境、快速成长。

正如你所了解的,Python已经成为最火热的开发工具之一,主要应用于全栈开发、大数据和机器学习三大领域。对于新手来说,如何选择正确的路线快速成长为优秀的Python程序员,是一个非常现实而急迫的问题。

020-01

当下是一个快节奏生活的时代,我们总是被生活中大量涌现的热点所吸引,几乎没有深度阅读和思考的机会。我始终认为,学习是需要沉下心来慢慢钻研的,是长期的、持续的;同时,学习不应该被赋予太多的功利色彩。一个Python程序员的成长路线应该是从入门到中级再到高级,在每个阶段掌握必备的知识技能后才顺利过渡到下一阶段。

021-01

然而,很多新手的学习路线却是这样的:学完基础语法之后,还没有搞清楚HTTP协议和Ajax异步请求,就兴冲冲地研究网络爬虫了;或者,学完基础语法就去实践视觉识别,连OpenCV的数据结构都看不懂;甚至,学完基础语法就直接研究神经网络,结果就是不断地重演从入门到放弃。

我给初学者的建议是,不急于求成,不好高骛远,一步一步,稳扎稳打,功到自然成。不急于求成,可以避免走弯路,非但不会延缓成长速度,反而会节省学习时间。不好高骛远,达成一个目标,再制定下一个目标,在连续的成功和进步中,初学者才能建立起自信心,激发出更强的学习兴趣。

本书的读者对象

对于从未接触过Python语言,但多少了解一点编程知识(如果熟悉或精通其他编程语言更好)的读者来说,这本书无疑是非常适合的入门读物。本书对基础知识做了高度的提炼和概括,以避免初学者陷入低级且冗长的细节知识点而心生懈怠;同时,本书又为初学者规划了从初级到高级的编程技能提升路线图,确保他们始终走在正确的道路上。

即使是对编程一无所知的新手,本书也非常值得阅读和参考。不同于一般的基础语法讲解教程,本书并未将Python开发限定于某个集成开发工具(IDE)中,而是采用交互式编程的方式来强化读者对语言特性的理解,帮助读者真正理解Python语言和Python编程,而不是成为某个开发工具的重度依赖者。

对于有一定基础的Python程序员来说,本书可以作为案头工具书来使用。本书从基础语法、基本技能讲起,涵盖了科学计算、数据处理、机器学习等领域,示例代码涉及30余个模块的使用。程序员在工作中遇到的很多问题,都可以在本书中找到解决方案。

代码和命令的排版约定

本书大量引用了在Python IDLE中以交互式方式运行的代码,部分不适于交互式运行的内容则直接给出了源代码。另外,在讲解模块安装方法以及使用Python解释器运行代码时,引用了命令行窗口的运行命令和运行结果。

为了便于读者理解和复现代码,对本书中出现的代码和命令做如下排版约定。

在Python IDLE中以交互方式运行的代码,排版使用带边框的浅灰色背景和黑色文字。

>>> import time
>>> time.time()
1586698966.554822

在代码编辑器中完成的源代码,排版使用带边框的白色背景。

# -*- encoding: utf8 -*-

import time
import threading

def hello(name):
    """线程函数"""
    
    for i in range(5):
        time.sleep(1)
        print('Hello, 我是%s'%name)

在命令行窗口或PowerShell中运行的命令、返回的结果等,排版使用不带边框的浅灰色背景和黑色文字。

D:\NumPyFamily\code> pip install numpy
D:\NumPyFamily\code>python sys_demo.py 3 5
['sys_demo.py', '3', '5']
即使异常终止,这一句仍会被执行
3.000000 + 5.000000 = 8.000000

阅读和学习的方法

编程既是一项工作,也是一门艺术,而且是实践性很强的艺术—从某些方面来讲,编程和雕塑艺术有很多共通之处。编程理论的学习固然重要,但一味地看书、看教学视频而不动手操作,是不可能真正掌握编程技术的。正所谓,“纸上得来终觉浅,绝知此事要躬行。”

阅读本书时,建议初学者一定要打开计算机,启动IDLE或其他熟悉的开发工具,一行一行输入代码,动手验证书中的例子,反复揣摩、练习,强化理解和记忆。唯有如此,才能真正理解Python,并将其理念融进思维中,使之成为自己得心应手的工具。

资源下载与技术交流

读者可以从https://github.com/xufive/ways2grow下载本书使用的数据文件、图像文件、源码文件等。如果有技术性问题需要探讨,请发邮件至xufive@outlook.com,我会在第一时间进行回复。

致谢

如果没有本书编辑赵祥妮女士的建议,我可能不会想起来写这本书。在本书的构思和写作过程中,大到内容取舍,小到标点符号,赵女士都给出了很多专业的建议。她一以贯之的认真和敬业态度鼓励了我,使我得以坚持下来。

同样给我鼓励的,还有我的同事们。他们分担了很多原本应该由我承担的工作,使我得以专心写作。我的同事们还从专业的角度,对本书的内容提出了许多修改意见。

还有一位必须要提及的年轻人,我的女儿。此前我一直认为她还没有长大,直到她从统计学的角度对本书与机器学习相关的内容提出了若干建设性的意见,我才意识到,她的思想和见解值得尊重。

我的爱人Irene Chen,虽然不懂编程,但懂得爱。她默默无闻地为我创造了一个舒心的工作和生活环境。她拥有神奇的能力,不仅可以缓解我颈肩的酸痛,还能化解我精神的焦虑和紧张。

本书内容繁杂,写作过程历时数月。没有以上这些朋友和家人的鼓励与帮助,仅凭我一个人的努力,很难走过这一段艰难的历程。因此,我由衷地感谢他们!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人民邮电出版社有限公司

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值