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

前言

写作初衷

过去的两年时间里,在陪伴和教育儿子学习编程的过程中,我自己也误打误撞地开始编写少儿编程类图书。随着《Scratch 2.0少儿游戏趣味编程》《Scratch 3.0少儿游戏趣味编程》《Scratch 3.0少儿编程趣味课》的出版,我开始拥有了一个比较稳定的读者群体,并且通过这些读者的反馈,了解到他们的一些学习和阅读需求。少儿编程图书的读者虽然主要是小读者,但更为关切学习内容的却是他们的家长。一些家长对于计算机和编程是比较陌生的,他们关心的往往是如何快速入门以及如何帮助和辅导孩子进行学习;另一部分家长则对计算机和编程有所了解,他们关心的是为孩子选择什么样的编程语言,甚至孩子学习的效果和水平如何。我既是作者,也是家长,当面对这些读者和家长的反馈时,用一句话可以概括我的感受——可怜天下父母心!

2019年,在开通了“李强老师的编程课堂”公众号以后,有一些读者开始询问我是否计划推出Python编程方面的图书和内容。说实话,随着Scratch图书的畅销,我就有了编写一本青少年学Python编程图书的想法。但一方面,围绕Scratch 3.0手头还有很多事情要做,图书的推广、读者后续的答疑和反馈、公众号的建设和完善、后续选题的规划和构思等都需要时间和精力,因此,编写Python图书的计划一推再推。虽然我很清楚当前学习Python编程的需求非常旺盛,但现在市面上Python图书已经很多了,而且其中有不少的优秀读物,如何编写一本有特色的Python图书,我的心里也不是很有底。因此,实现编写Python编程图书的计划是一个需要反复思考、优化和尝试的过程。

好在,编写Scratch 3.0图书的过程让我对教孩子编程有了一些直观的认识和较为深入的思考,而这些都是值得借鉴的宝贵经验,也是我的优势所在。经过1年多的思考和探索,我终于完成了这本书的构思和内容组织,这才有了您手中这本《Python少儿趣味编程》。书稿交给出版社,我终于松了一口气。但我知道,这本书还远不那么“完美”,还需要作为读者的您多多批评指正,帮助我不断地提高和完善。但是,我真心希望这本书能够为少儿学编程贡献一份力量,并且愿意为此而不断地努力、改进和提高。

LOGO语言之父西摩尔· 帕普特曾经提出“低地板”和“高天花板”的原则,他强调成功而有效的技术应该能够为新手提供简单的入门方式,即“低地板”,同时又能让他们随着时间的推移和经验的积累去从事日益复杂的项目,即“高天花板”。Scratch之父米切尔·雷斯尼克又在此基础上增加了一个“宽墙壁”的理念,指出好的技术要支持不同类型的项目和学习路径,即把学习的入口和跑道都拓宽。Python语法简单,容易入门;Python功能强大,甚至能够实现各种人工智能应用;Python模块众多,可以用于Web开发、游戏开发、科学计算等众多领域,支持过程式、面向对象、函数式等多种编程范型。从某种程度上讲,Python就是一种符合“低地板+高天花板+宽墙壁”的语言。本书的目标是带领读者在学习Python的过程中,踏上“低地板”,认识和仰望“高天花板”,并且启发读者去拓展和构建自己的“宽墙壁”。最终,希望读者通过不断学习,能够构筑一间自己满意的“Python技能之屋”!

本书内容结构

本书一共分为17章,按照由简到难、逐步深入的方式安排各章内容。在多章的末尾,给出了一些练习题,附录提供了这些练习题的参考解答。

各章的主要内容如下。

第1章 认识Python。主要带领读者认识Python编程语言,了解Python的特点,学习如何安装Python,并且编写一个简单的Hello World程序。本章还介绍了Python自带的IDE——IDLE,介绍并展示了IDLE的一些功能,而这些功能是我们学习编程的时候经常要用到的。

第2章 变量、数字和字符串。首先介绍了变量的概念、命名以及赋值;然后详细介绍了数字和字符串这两种基本数据类型,以及这两种类型相关的操作。然后,我们开始使用一个名为“成绩单”的应用示例,展示如何应用本章所学习的数据类型知识,而这个“成绩单”的示例,将贯穿于本书后续多章之中。

第3章 列表。介绍了列表数据类型,详细讲解了创建列表、访问列表、使用列表的方法和操作,并且通过一个较为生动有趣的例子——“帮Johnson找到回家的路”——展示了列表的用途。当然,最后,我们还要通过扩展“成绩单”示例进一步熟悉列表的用法。

第4章 元组和字典。介绍元组和字典这两种类型,详细讲解了如何创建、修改和使用元组和字典,如何实现字典和列表的转换。最后,通过扩展“成绩单”示例,展示了这两种数据类型的用法。

第5章 布尔类型。介绍了比较运算符和布尔运算符,通过具体的示例,展示了这些运算符的用法,还介绍了如何组合使用布尔运算符。

第6章 条件语句。首先介绍了缩进的用法,缩进在Python程序中具有重要的作用;然后,介绍了if、else、elif等条件语句,通过“成绩单”示例展示了条件语句的用法。

第7章 循环。介绍了while循环和for循环的结构和用法,通过“成绩单”示例展示了循环语句的应用。

第8章 异常和注释。首先介绍了异常的概念以及如何处理异常,然后讲解了注释的作用和用法,通过“成绩单”示例展示如何使用异常处理和注释。

第9章 自定义函数。Python拥有功能丰富的内建函数,但自定义函数为用户提供了更大的灵活性。本章介绍了函数的基本结构,如何编写和调用函数,如何设置参数和返回值等,通过“成绩单”示例展示了自定义函数的用法。

第10章 面向对象编程。Python是支持面向对象编程的语言。本章介绍了面向对象的基础知识,包括类和对象的概念,方法、构造方法、继承等,通过“成绩单”的示例展示了如何应用这些概念来实现面向对象编程。

第11章 文件操作,介绍了用Python对文件进行一系列操作的方法,包括打开文件、读取文件、写入文件等,最后通过“成绩单”的示例展示文件操作的具体用法。

第12章 海龟绘图。海龟绘图是Python的一个有趣、有用的功能模块。本章介绍了海龟绘图的用法,围绕turtle模块,介绍了导入、创建画布、控制画笔、设置颜色等基本功能,为下一章的绘制内容打下一个基础。

第13章 绘制机器猫。在第12章所介绍的内容基础上,本章详细介绍了如何使用海龟绘图来绘制一个可爱的机器猫的形象,涉及模块导入、函数调用、自定义函数等知识和技能。

第14章 绘制小猪佩奇。继续使用海龟绘图模块,绘制了小朋友们喜爱的小猪佩奇的形象。

第15章 Pygame基础。介绍了Pygame模块的基础知识,为下一章内容进行铺垫。Pygame是功能比较强大的模块,包含绘图、动画、事件处理等众多方面,是Python游戏开发的常用功能模块。本章最后通过一个简单的“弹球游戏”,初步展示了Pygame的应用。

第16章 贪吃蛇。详细介绍了如何使用Pygame编写一款经典的贪吃蛇游戏,讲解了分析、规划和开发游戏的过程,较为完整地展示了Pygame功能的应用。

第17章 Python的AI应用——以自然语言处理为例。Python广泛地用于人工智能的各种应用开发之中。本章首先概览地介绍了人工智能技术,以及Python作为人工智能语言的优势和特点,选取自然语言处理(NLP)这个领域,介绍了如何应用Python及其模块,对古典名著《西游记》进行分词处理和分析。通过本章的学习,读者对于Python在人工智能领域的应用会有一个初步的认识和体验。

本书特色

市面上讲授Python编程的图书已经很多,也有不少以青少年和少儿作为目标读者的Python图书。在写作本书之前,笔者翻阅了已经出版的一部分Python图书,并进行了一番比较。经过较为深入细致的思考后,在写作本书的过程中,我们力图使得本书保持和体现如下几个方面的特色。

本书的读者对象

本书适合想要学习Python编程基础的少年儿童,对于想要快速入门Python编程的读者来说,也适合阅读和学习本书。

本书也适合想要教孩子学习编程的家长、少儿编程培训班的老师阅读参考,并且可以作为少儿编程培训的教材。

根据本书的内容难度和作者的一些调查反馈,10岁以下的孩子,需要在家长和老师的帮助或辅导下阅读和学习本书;10岁以上的孩子,可以尝试自行阅读和学习。

配套资源

本书的所有配套源代码、素材及习题答案,可以通过异步社区(www.epubit.com)中本书的页面下载。读者也可以关注微信公众号“李强老师的编程课堂”进行下载,还可以通过该公众号获得更多免费的少儿编程的信息和资源。 66Uktvzsb6yVo96AZ+wriOwANu5QMv+o0CXvmPXkMaijbC4cgW4fWG0LpodjaYiU

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