
青少年Python编程系列讲解
文章平均质量分 87
根据青少年编程的特点,由浅入深讲解Python语言。从基础的语法、程序结构、数据类型到自定义函数、系统函数的使用、面向对象基础知识,最后引入算法的基本思想,每节课内容后均有思考题。
凤城老人
工作十余年了,做过开发(后端和前端都做过),随着年龄的增长已经转行做运维、网络、安全。获得软考“网络规划设计师(高级)”资格,工作之余自己在家钻研怎么教孩子编程。前面十多年一直很懒,从未发过文章。最近在教孩子编程的过程中突然想起来把教孩子编程的心得分享给大家。
展开
-
37、递推算法、分治算法入门和算法复杂度
这节课是整个青少年Python编程系列讲解的最后一节课了。前面一节课我们讲了排序算法和查找算法,这节课我们了解一下递推算法和分治算法,以及算法复杂度的概念。算法还有很多,比如分型算法、聚类算法、预测算法、调度算法、路径算法等等,我们就不再展开讲了,大家有兴趣的可以自己进行研究,算法部分的内容为这里是给大家开一个头。下面正式开始这一讲的内容吧。原创 2022-12-22 12:58:43 · 432 阅读 · 2 评论 -
36、排序算法和查找算法入门
上一节课我们已经讲了算法的基础知识,这节课我们讲一下算法中两个最为经典的类型:排序算法和查找算法。排序和查找我们之前直接使用列表的内置方法,那实现排序和查找最底层的原理是什么呢?我们正式开始这节课的内容吧。原创 2022-12-21 13:07:45 · 184 阅读 · 0 评论 -
35、算法的概述和解析算法、枚举算法
前面我们已经将Python语法部分的知识都讲完了。前面我们拿到一个程序题,我们都是按照自己的思路直接写代码,但是复杂的程序就不是那么容易直接写出来的了,需要分析整体的思路。从这节课开始我们要讲算法的相关知识了。算法是对解题方法的精确而完整的描述,即解决问题的方法和步骤。算法不受语言的限制,不论是使用Python还是使用其他语言,算法都是一样的,算法分析出来以后,可以很轻松的得到程序的代码。我们正式开始这节课的内容吧。原创 2022-12-20 23:48:16 · 1048 阅读 · 0 评论 -
34、Python中时间的操作
在我们生活中,我们经常需要用到时间。无论是查看当前的时间,还是计算两个时刻之间相差多少时间。那在Python中如何查看时间呢?这节课我们专题讲一下Python中时间的操作。Python的内置标准库time库包含了各种与时间相关的函数,我们一起学习一下吧。原创 2022-12-18 14:27:14 · 778 阅读 · 2 评论 -
33、Python第三方库安装和使用
Python成为最流行的语言之一,除了它的简单易学和语法简单外,还有一个重要的原因是Python有非常强大的第三方库。第三方库不是官方的内置库,而是由社区大量的开发者提供的,据统计目前第三方库的数量已经超过十多万种。这节课我们讲一下如何安装第三方库,并使用3种第三方库给大家讲解第三方库的使用方法。原创 2022-12-17 14:00:41 · 1743 阅读 · 0 评论 -
32、Python的面向对象基础
类就像一个模板,按照类给的模板,可以创造出一个个的对象。类是抽象的,对象是具体的。比如说,一只狗是一个具体的对象,把狗的特征抽象出来,狗这个物种就对应类。类是具有相同属性和方法的对象的集合,定了了集合中每个对象所共有的属性和方法。类有属性和方法,属性是静态的,方法是动态的。比如每只狗都有它的名字、出生日期、性别、毛发颜色,这就是属性;每只狗都会发出“汪”的叫声,会吃东西、睡觉等等,这就是方法。原创 2022-12-14 21:10:42 · 142 阅读 · 0 评论 -
31、在Python中自定义模块和包
随着程序复杂性的增加,我们会发现自己写的代码越来越长,定义的函数也越来越多,这样要对代码进行维护就更加困难了。怎么解决这个问题呢?我们可以把函数分组,分别放到不同的模块里,只要在使用的时候分别调用这些模块就可以了。在真实的项目开发中,不同的模块是由不同的人编写的,只需要把模块交给别人使用就可以了。我们知道,函数在被调用之前,代码都是不会执行的。那编写模块中函数的人如何验证自己的代码能否正常使用呢?如果在模块中加了测试函数是否正常使用的代码,别人导入模块后测试的代码也会被运行。__name__。原创 2022-12-13 21:00:09 · 287 阅读 · 0 评论 -
30、Python常用内置库入门
上节课我们讲了Python中的内置函数。除了内置函数外,还有很多非常有用的函数都放在一些内置库中,我们需要引入这些库后才可以使用,这里我们挑一些非常常用的内置库给大家讲解。我们正式进入这节课的内容吧。原创 2022-12-12 21:16:37 · 1035 阅读 · 0 评论 -
29、Python常用内置函数
前面的内容我们零散学习了大量Python语言中的内置函数。这节课我们把剩下的常用的内置函数都介绍一下。这节课的内容主要是以记忆为主,需要书写的代码不多。下面我们正式开始这节课的内容吧。原创 2022-12-10 21:14:08 · 207 阅读 · 0 评论 -
28、Python中函数的递归调用
前面我们已经讲了Python中的函数的用法和属性,本节课是函数部分的最后一讲,主要讲函数一个非常重要的“魔法”,这个“魔法”能够解决很多比较难的问题,“魔法”的名字叫递归。这节课我们一起了解一下递归吧。原创 2022-12-08 21:58:59 · 697 阅读 · 0 评论 -
27、Python中自定义函数进阶
上节课我们初步了解了什么是函数,并讲了自定义函数的定义方式。Python中的函数如果深入研究还有很多的知识,我们这里只针对青少年编程考级的内容讲一下函数的部分进阶操作。在讲这两种参数前,先让大家思考一个问题。如果要写一个函数,计算两个数的乘积,我们很容易就能写出来:那如果让大家写一个函数,计算若干个数的乘积。我们该怎么写呢?乘数的个数不确定,用户可能算2个数的乘积、3个数的乘积,甚至算100个数的乘积。那按照我们之前讲的内容,函数的形参的个数是固定的,有几个形参调用函数时就要就几个实参,那这个函数是不原创 2022-12-07 23:28:37 · 207 阅读 · 0 评论 -
26、初识Python的自定义函数
提到函数这个词,大家应该都不陌生。我们之前学过很多Python中的内置函数,还有turtle库中的众多函数。所有的函数都是人们事先定义出来的,除了使用定义好的函数外,我们也可以自己定义函数。这节课开始,我带大家了解一下Python中如何自定义函数。在写一段程序的时候,需要多次用到同样的功能,如果每次都要重复写相同的代码,不仅会增加代码量,而且阅读与修改及不方便。如果把实现相同功能的代码作为一个代码块封装在一起,形成一个函数,每次需要时调用这个函数,就很方便了。函数是一段能够实现特定功能的、可重复使用的语句组原创 2022-12-06 20:38:05 · 243 阅读 · 0 评论 -
25、Python的异常处理
这节课我们讲要了解一个新的知识:异常处理。假设我们写一个程序,计算两个数相除的商,程序运行后除数输入0。再假设程序中要求用户输入一个整数,用户输入了一个浮点数。这两种情况程序肯定会报错,但是这种问题我们在写程序时有办法控制吗?那如果用户就这样输入了,我们又该怎么处理呢?我们一起来了解这一课的知识。在程序执行中,任何中断正常程序流程的条件都是异常。例如,发生下列情况时,会出现异常:异常和程序代码错误是有区别的。产生异常的代码本身没有问题,在执行程序时由于不可预见的操作而产生的。而错误是代码本身的问题造成程序无原创 2022-12-05 20:11:06 · 237 阅读 · 0 评论 -
24、Python中读写csv文件基础
前面一讲中,我们已经讲了如何对文件进行读写的操作,我们这节课专门针对一种保存数据时非常常用的文件格式进行讲解。这种文件扩展名为.csv,也叫做逗号分隔符文件。这种文件可以使用记事本、excel等多种软件打开,用于存储数据。在csv文件中,同一行的数据直接使用“,”分隔。一行可以显示多个数据。如果文件有多行,就可以构成一个二维的数据。我们看下面的表格:这个文件存储在csv格式中以如下形式显示:当然,csv格式的文件如果使用excel打开,也会以表格的形式显示。一维数据在Python中以列表的形式存在,而csv原创 2022-12-04 19:10:39 · 586 阅读 · 0 评论 -
23、Python文件的读写基础
前面我们写过这么多的程序,大家有没有思考一个问题:如果我们程序关闭了,上次计算的结果还存在吗?如果三天前计算出来的结果又需要使用了,我们怎么办呢?这就要提到我们文件的概念了。文件是以硬盘为载体存储在计算机上的信息集合。计算机中的文件可以是文档、程序、快捷方式或设备。每一个文件都有一个文件名,文件名由名称和扩展名组成。名称是我们给每个文件起的名称,扩展名代表每个文件的类型。比如我们Python的源代码扩展名就是.py。以下是常见的文件扩展名:图片文件 .jpg .png .bmp文本文件 .txt原创 2022-12-03 19:59:23 · 521 阅读 · 0 评论 -
22、字符编码和Python的二进制序列类型
前面一节课我们讲了进制的转换,这部分内容需要写的代码不是太多,不过需要多动笔计算联系练习。这节课我们开始讲字符编码。大家都知道,计算机中只认识0和1,那计算机中的字符是如何存储的呢?原创 2022-12-02 11:03:33 · 195 阅读 · 0 评论 -
21、数制的换算和数制在Python中的表示
这节课我们要开始了解计算机中的数制以及使用Python如何表示各种数制,以及数制换算的方法。这节课的内容需要掌握的代码并不算多,主要是概念性的东西较多,对数学计算的要求相对比较高。需要大家学习这部分内容的时候带笔计算。我们正式进入到正题中。原创 2022-12-01 11:49:51 · 126 阅读 · 0 评论 -
20、Python海龟库的进阶
前面一节课我们已经讲了使用海龟画图画直线了,大家可以复习并多练习。但是要想画出美丽的图画,好像还不够。如果一幅画中画不了曲线、填不了颜色,那就没有绘画的灵魂了。我们这节课就要学习使用Python的海龟库画圆、画点、涂色等等。原创 2022-11-30 19:41:51 · 411 阅读 · 0 评论 -
19、初识Python的海龟库
前面我们已经学完了Python的所有数据类型和程序的结构。从这节课开始,我们来学习Python的海龟库。海龟(turtle)库中有一支神奇的画笔,从绘画窗的正中心开始,根据指令在画布上游走。我们可以自己控制画笔的方向、颜色、粗细,从而绘制出多彩的图形。我们从这节课开始讲turtle库中基本的函数使用,让我们也用python画出属于自己的一幅画吧。原创 2022-11-30 12:07:01 · 542 阅读 · 0 评论 -
18、Python的循环结构(二)
上节课我们已经学习了遍历循环、计数循环和条件循环。从循环结构开始,程序的难度明显变高了,需要多进行练习。这节课还有循环的三个知识点——break和continue语句以及循环的嵌套讲一下。最后再带大家熟悉一下顺序结构、分支结构、循环结构的综合运用。原创 2022-11-29 16:29:46 · 285 阅读 · 0 评论 -
17、Python的循环结构(一)
截止上节课为止,数据类型的学习我们就暂时告一段落了。我们之前学习过顺序结构和分支结构,从这节课开始,我们将要学习第三种程序结构:循环结构。我们举一个生活中的例子先了解一下什么是循环结构:“直到放寒假为止,我们每周星期一到星期五都去上学。”这虽然是一句话,但是“上学”这个动作执行了很多遍。这就叫循环结构。好的,下面我们进入正题,学习循环结构。原创 2022-11-29 11:05:43 · 235 阅读 · 0 评论 -
16、Python的字典类型和集合类型
字典(dictionary,函数名称dict)是另一种可变容器模型,且可存储任意类型对象。如字符串、数字、元组等其他容器模型。字典由键和对应值成对组成。字典也被称作关联数组或哈希表。基本语法如下:字典,从字面我们就想到了字典。我们回忆一下我们查字典,不管采用哪种查字典的方法,最后对应的 我们想要找的那个字。还有就是超市里的价签,都是有对应性的。字典和他们一样都有对应性。集合(set)是由不重复元素组成的无序容器。基本用法包括成员检测、消除重复元素。原创 2022-11-28 17:12:53 · 274 阅读 · 0 评论 -
15、Python的元组类型
前面我们分三讲的内容讲了Python的列表类型,这节课我们要讲一个新的类型,叫做元组(Tuple),元组类型与列表类型非常相似,唯一的区别是:列表的内容可以修改,元组的内容不可以修改。元组(tuple)的创建非常简单,在小括号中添加元素就可以。元组的创建有两个注意点:尤其是2点要注意,我们可以试一下,如果不加逗号,变量是什么类型。二、元组与列表的区别Python元组和Python列表数据类似,都是线性表。唯一不同的是:Python元组赋值后所存储的数据不能被程序修改,可以将元组看作是只能读取原创 2022-11-28 10:08:32 · 520 阅读 · 0 评论 -
14、Python的列表类型(三)
上节课讲了大量列表操作的方法,一方面需要背诵相关方法单词的书写,另一方面还要反复练习熟悉相关方法的使用。我们这节课继续讲列表的其他相关操作。这节课我们要学一下列表的排序、倒序、求最大值、最小值、求和等操作。原创 2022-11-27 17:46:36 · 376 阅读 · 0 评论 -
13、Python的列表类型(二)
上节课我们已经学习了列表的定义,列表的索引和切片以及列表元素的修改、删除。列表的操作还有很多,我们这节课继续讲列表的其他操作。原创 2022-11-27 12:34:36 · 621 阅读 · 0 评论 -
12、Python的列表类型(一)
列表(list)是一种数据项构成的有限序列,即按照一定的线性顺序,排列而成的数据项的集合,在这种数据结构上进行的基本操作包括对元素的的查找,插入,和删除。创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。字符、字符串、数值等不同数据类型的数据可以保存到同一个列表中。list1 = ['iOS', '安卓', '鸿蒙']列表中的每一个数据项我们称为列表的元素。列表中的每个元素可以是相同数据类型,也可以是不同的数据类型。但是在实际使用中一般是相同的数据类型。原创 2022-11-26 21:51:50 · 1056 阅读 · 0 评论 -
11、Python的分支结构
前面我们讲的内容,程序都是从上到下执行,我们称为。但是在实际中,我们经常会碰到需要分不同情况的问题。我们举一个生活中的例子:“如果明天不下雨,我们就去公园玩;如果明天下雨,我们就在家学习。” 这就叫做。在程序中,我们有时候也需要用到这样的结构。这节课,我们就讲一下Python中如何处理分支结构的程序。原创 2022-11-26 09:45:29 · 694 阅读 · 0 评论 -
10、Python字符串的进阶操作(二)
上节课我们已经讲了字符串的索引、切片和成员运算符,以上内容需要自己多练习才能熟练掌握。这节课我们继续讲字符串的方法和函数,看看它们能给字符串带来哪些“魔法”。这节课的内容使用起来并不算太难,关键在于背各种方法和函数的单词。原创 2022-11-25 11:07:31 · 515 阅读 · 0 评论 -
9、Python字符串的进阶操作(一)
前面的课程中,我们已经在使用字符串了。到目前为止,我们对字符串的使用都是简单的操作。我们可以对字符串进行很多操作,字符串是可以变很多魔法的哦!这节课我们来看看字符串的各种“魔法”吧。原创 2022-11-24 15:26:52 · 259 阅读 · 0 评论 -
8、Python的转义字符,输出函数的进阶和其他内置函数
上节课我们已经学习了比较运算和逻辑运算,本次课我们将引入一个新的问题。我们知道,在Python中字符串需要写在引号中,那如果字符串的内容有引号怎么办?这就引入了我们今天要讲的主要内容。原创 2022-11-24 11:57:20 · 351 阅读 · 0 评论 -
7、Python的比较运算、逻辑运算和布尔值
前面我们已经学习了输入和类型转换。现在我们可以使用Python解决一些实际的问题了。我们再引入一个数学的问题,2 + 3和2 × 3的结果谁大谁小?这个问题使用Python如何解决呢?这次的课我们将要讲一下比较运算、逻辑运算和布尔值。原创 2022-11-23 16:56:46 · 782 阅读 · 0 评论 -
6、Python的输入和数据类型转换
之前我们已经学习了Python的输入、运算和赋值。大家思考一下,如果编写程序时不知道需要使用什么数据,程序执行的时候才知道,那我们怎么办呢?那这一讲我们就要提到Python的输入了。原创 2022-11-23 10:17:55 · 744 阅读 · 0 评论 -
5、Python变量的赋值和标识符
上次课已经给大家讲了数据类型和算术运算。这次课要讲一下变量和标识符。大家每个人都有自己的名字吧?平时生活学习中,大家都称呼自己的姓名,这样才能分辨出谁是谁。那同样的道理,Python程序中所有的数据我们也可以给它起名字。原创 2022-11-22 19:51:22 · 407 阅读 · 0 评论 -
4、Python的数据类型算术运算符
上次课我们说了输出和注释。但是既然是计算机,我们就要利用它来做计算,我们这次的讲一下Python的数据类型和算术运算符在Python中的使用。原创 2022-11-22 11:06:34 · 170 阅读 · 0 评论 -
3、Python的输出和注释
前面我们已经讲了Python的安装和Python的IDE环境。今天我们来正式使用Python语言来写最简单的程序。原创 2022-11-21 20:43:23 · 1075 阅读 · 0 评论 -
2、初识Python语言
从上次的内容中我们已经了解了,Python是一种高级语言。这一期我们来初步了解一下Python。原创 2022-11-21 19:53:58 · 219 阅读 · 0 评论 -
1、认识计算机和计算机语言
计算机语言就是由0和1这两个数字组成的。最早的计算机需要用光电阅读机将穿孔卡片上的数据读入计算机,再利用打孔机在卡片上打印出一些小孔,代表输出的二进制代码。高级语言是参照数学语言而设计的类似于人类日常说话的语言。那我们怎么进行编程呢,我们需要使用计算机能够看懂的语言告诉计算机做什么。使用0和1来写程序,对于计算机来说轻松了,但是对于人类来说太难了。除了Python之外,常用的高级语言还有很多,比如C++、Java、VB等等。3.3 高级语言——接近人类语言的计算机语言。三、什么是计算机语言和编程。原创 2022-11-21 19:22:43 · 398 阅读 · 0 评论