购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

前言

在数字经济与实体经济深度融合的今天,战略性新兴产业的创新驱动已成为全球竞争的焦点。党的二十大报告指出:“推动战略性新兴产业融合集群发展,构建新一代信息技术、人工智能、生物技术、新能源、新材料、高端装备、绿色环保等一批新的增长引擎。”Python是当前人工智能领域广泛使用的一门编程语言,本书以Python编程语言为工具,以人工智能为核心脉络,致力于培养具备跨领域技术融合能力的复合型人才,为新兴产业的发展提供技术支撑与创新动力。

在本书编写上,我们强调将理论与实际紧密结合,通过大量的程序实例,向读者直观展示利用程序设计方法解决实际应用问题的过程。本书的特色包括:

(1)与国家的战略发展方向紧密关联,结合人工智能、工业应用等方面的具体案例,帮助读者培养计算思维、提升应用能力,为未来的创新性工作奠定基础。

(2)设计开放性问题,鼓励读者从求解方法调研、求解方案设计、求解步骤实施、求解结果评价等方面开展学习,培养读者的自主学习能力和独立研究能力。

(3)引入国产计算环境,帮助读者掌握基于国产平台的人工智能问题求解方法。

本书在逻辑上分为三个部分。第一部分包括第1~7章,介绍了Python编程的基础知识,并通过逐步构建一个简易的数据管理程序,帮助读者掌握如何利用Python编程方法解决实际问题;第二部分包括第8、9章,介绍了Python工具包及人工智能的基本概念,并结合糖尿病预测问题、手写数字图像识别问题及数据检索问题,帮助读者掌握利用工具包快速解决人工智能问题的方法;第三部分包括第10章,介绍了人工智能应用案例,引入华为MindSpore国产计算环境及开源代码广泛使用的PyTorch框架,帮助读者掌握基于深度学习框架的人工智能问题求解过程。下面给出各章的主要内容。

第1章首先给出了程序设计和Python语言的简单介绍,包括编译型语言和解释型语言的区别、Python发展史及其特点和应用领域。然后,以Windows和Linux平台为例介绍了Python 3.x的安装步骤。接着,通过一个简单的HelloWorld程序使读者对Python程序的运行方式、注释方法、编写规范和标准输入/输出方法有了初步认识。最后,介绍了Python自带的IDLE开发环境的使用方法。

第2章首先给出了变量的定义方法和数值、字符串、列表等常用的Python数据类型,通过这部分内容读者可掌握利用计算机存储数据的方法。然后,介绍了常用的运算符,包括占位运算符、算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、身份运算符、成员运算符和序列运算符,通过这部分内容读者可掌握不同类型数据所支持的运算及运算规则。最后,介绍了条件和循环这两种语句结构,通过这部分内容读者可以设计程序解决具有更复杂逻辑结构的问题。

第3章首先介绍了函数的定义与调用方法,以及与其相关的参数列表、返回值等内容。然后,介绍了模块和包的概念与作用以及使用方法。接着,介绍了变量的作用域,包括全局变量和局部变量的定义与使用方法以及global、nonlocal关键字的作用。最后,介绍了一些特殊的函数,包括递归函数、高阶函数、lambda函数、闭包和装饰器。

第4章首先介绍了类与对象的概念以及它们的定义和使用方法,并给出了Python类中包括构造方法和析构方法在内的常用内置方法的作用和定义。然后,介绍了继承与多态的概念和作用,并给出了它们的具体实现方法。最后,介绍了类方法、静态方法、动态扩展类与实例、__slots__、@property等内容。

第5章首先介绍了可变类型与不可变类型的概念和区别。然后,在第2章内容的基础上进一步介绍了列表、元组、集合和字典这些数据类型的使用方法。最后,介绍了切片、列表生成表达式、生成器、迭代器的作用和具体使用。

第6章在第2章内容的基础上进一步介绍了字符串的使用方法,包括字符串常用操作、格式化方法及正则表达式。在正则表达式部分给出了一个简单的爬虫程序示例,供读者参考。

第7章首先介绍了os模块的使用,作为I/O编程的基础,通过os模块可以方便地实现对操作系统中目录、文件的操作,如获取当前工作目录、创建目录、删除目录、获取文件所在目录、判断路径是否存在等。然后,介绍了文件读/写操作,利用文件进行数据的长期保存。接着,介绍了一维数据和二维数据的概念,以及对可用于存储一维/二维数据的CSV格式文件的操作方法。最后,介绍了异常处理相关的内容,包括异常的定义、分类和处理。

第8章首先介绍了NumPy工具包,它是Python科学计算的基础包。2009年底开源的数据分析包Pandas提供了处理结构化数据的数据结构和方法,使其成为强大的数据分析工具。本章将介绍Pandas的数据对象和方法。最后,本章介绍了数据可视化的工具包Matplotlib,它是目前应用广泛的用于绘制图表的Python工具包。

第9章介绍了人工智能的基础知识及应用案例。首先,简要介绍了人工智能的基本概念。然后,一方面介绍机器学习的基本概念,包括有监督学习和无监督学习,可学习参数和超参数,欠拟合和过拟合,损失函数,训练集、验证集、测试集、泛化能力和交叉验证,分类、回归和聚类,以及评价指标;另一方面以糖尿病预测问题为例介绍了Python经典机器学习工具包scikit-learn的使用方法。最后,结合手写数字图像识别和数据检索两个问题,给出了应用scikit-learn工具包进行机器学习建模的具体过程。

第10章首先基于MindSpore框架,给出了手写数字图像识别和流程工业控制系统时序数据预测两个人工智能应用案例;然后基于PyTorch框架,给出了虚假新闻检测的人工智能应用案例。

在利用本书学习Python编程时,建议读者一定要多思考、多分析、多动手实践。当看到一个具体问题时,首先要自己分析该问题,设计求解该问题的算法;然后梳理程序结构,编写程序实现算法;最后运行程序,尝试通过系统的错误提示或通过程序调试方法解决程序中存在的语法错误和逻辑错误问题。只有这样,才能真正掌握一门程序设计语言,进而在实际中真正做到熟练运用程序设计语言解决具体应用问题。

此外,随着近年来大模型的快速发展,读者在学习过程中遇到问题时,可借助大模型这一有效工具来解决。建议读者将大模型作为学习的辅助工具,而非完全依赖的对象。读者在使用大模型时可运用批判性思维,结合具体的学习内容和实际情况对大模型所给出的回复进行甄别与验证,注重自身的思考和实践,以真正掌握Python语言程序设计方法、具备应用程序设计方法解决实际问题的能力。

本书由南开大学计算机学院的任课教师编写完成,具体分工如下:李涛负责第1~3章的编写;王恺负责第4~7章、第9章及第10章手写数字图像识别案例和流程工业控制系统时序数据预测案例的编写,并负责全书的统筹和定稿;陈晨负责第8章及第10章虚假新闻检测案例的编写。

在本书的编写过程中,机械工业出版社的编辑对本书提供了很多意见和建议,在此表示真诚的感谢!

在本书编写过程中,吸收了Python语言方面的很多网络资源、图书中的观点,在此向这些作者一并致谢。限于作者的时间和水平,书中难免有疏漏之处,恳请各位同行和读者指正。

补充说明

作者为第1~7章提供了教学视频,读者可扫描对应章节开头给出的二维码在线观看。此外,读者还可扫描下方二维码下载书中代码清单对应的代码、案例代码等资源。

编者
2025年2月于南开园 Hlo7NKdyXDbles3HrxQ6HCGLm6r8UGWPIgGHYZhx5v7bxyiBcn5n2D4VhxX1m5zr

点击中间区域
呼出菜单
上一章
目录
下一章
×