如果你之前看过其他教程,但是发现云里雾里复杂的让你头晕眼花的话,没错,看这里,本系列Python教程专为啥都不会的新手用户打造,放宽心,大胆看,我就是说说书,你就当听听故事,轻松愉快走进编程的大门,“程序设计”不再神秘也不再遥不可及。只要你会最基本的电脑操作(装装软件打打字),读过那么几天书,汉字都认识,英文会那么一点点就够了,包学包会!Let’s go!
“循环”是程序设计里一个很重要的概念,初学者第一次看到可能会有点儿疑惑,但实际上并不难理解。我之前有提到过,编程语言其实就是把我们人类的语言翻译成计算机能看得懂的语言,以便我们人类去命令计算机做事情。所以“循环”的意思实际上也很好理解,我们在字典里查到的解释是“事物周而复始地运动或变化”,在编程里其实就是命令计算机去重复做一件事情(或者一类事情)。
我们明白了“循环”是用来“做什么”的,接下来就需要知道“怎么做”了。命令计算机重复做事情的方法主要由两种。他们的原理本质是一样的。
“循环”常用的方式有两种,接下来先介绍让计算机进行“循环”的第一种方法,利用一个语法结构,这个语法结构的核心是一个英文单词“while"。
可能对于第一次听到“while循环”这个名字的同学来说,光是这个名字读起来就已经有点儿晕乎了,况且这还只是循环
中的其中一种。请放心哈,循环
只是计算机中的一种机制,这种机制只要你理解了,另一种类型的循环
都是类似的,只不过是不同的变形,让这种机制有时候使用起来更方便一些而已,所以,我们只要先把其中的一种:while循环
学明白了,后续的都是小菜一碟。
※ 大多数教程里都是先讲for循环
,这是因为for循环
用的更多一些。但是对于初学者而言,while循环
理解起来更容易一些,我先讲while循环
,然后再讲for循环
, 这样更便于理解循环
到底是个什么东西。
这里先给大家看一段代码,这是一个while循环
:
number = 0
while number < 9:
print(number)
number = number + 1
在第1行,我们自己定义了一个变量number
,给它赋值为数字0。
从第2行到第4行,这是一个while循环
。while
这个英文单词很常见,意思是当……的时候
。while循环
解释起来就是,当满足设定的条件时,做下面这些事情。
我们分解来看,第2行对应的就是当满足设定的条件时,
,我们看下面的表格:
当满足 | 设定的条件 | 时 |
---|---|---|
while | number < 9 | : |
这句话当满足设定的条件时,
和代码第2行的while number < 9:
是对应的,当满足……时,
对应的就是第2行代码中的while
和行末尾的冒号:
,单词while
和末尾冒号:
之间的number < 9
就是那个条件
。这里注意的时候,单词while
后面要跟上一个空格,然后写上条件
,最后写上冒号:
。然后按回车符,在下一行开始,就是当满足这个条件时要执行的操作命令,注意这些操作的代码行的最前面要比while
单词那一行前面多空4个空格。这些操作执行完之后,再次跳回到第2行的代码进行执行,也就是判断那个条件
,如果满足条件
的话,就再一次执行第3行、第4行,一直这样循环往复,直到某一次调回到第2行进行判断时发现不满足条件
了,就结束这个循环
,不再进入第3行执行了。
※ 如果有同学不知道第4行是什么意思的看这里。我们知道,在有等号=
的命令行中,执行的操作是把等号=
后面的值赋给等号=
前面的那个变量。所以这里的意思就是,把当前的number
的值加1后,赋值给number
这个变量。也就是说,比如在执行这一行命令之前,number
是数字5,在执行这一行命令时,number
加1后就是6,然后把数字6赋值给number
,经过这一行的操作后,number
变成了6。
我们再回过头来看这4行代码,意思就是,先将一个变量number
赋值为0,当number
小于9时,在屏幕上打印number
当前的值,然后让number
增加1。然后再次对number
进行判断是否小于9,如果仍然小于9,就在屏幕上打印number
当前的值,然后让number
增加1,之后再次对number
进行判断是否小于9,重复这个过程,一直到number
不满足“小于9”这一条件,就跳出了这个while循环
,去执行第5行之后的代码。(这里只有4行代码,所以整个程序也就执行结束了)。
代码执行如下图所示:
for循环
是另一种循环方式,本质原理是一样的。它可以用汉语描述为:对一个团体中的每个成员,执行一些操作
。 这里的团体
和成员
并不限定是人
或者动物
或者其他什么东西。如果学过数学中的集合
的话,也可以描述为:对一个集合中的每个元素,执行一些操作
。
它的样子是这样的:
for x in ['李甜甜', 465, 35.7, '来日方长', '今天天气不错。', 485647.48]:
print(x)
这里的代码只有2行,我们先看第1行,可以分解成5部分:单词for
、字母x
、单词in
、 列表['李甜甜', 465, 35.7, '来日方长', '今天天气不错。', 485647.48]
、冒号:
。他们之间用空格隔开(最后的冒号:
可以不用)。这一行中,for
是一个关键词,这个关键词是特定的,以for
这个单词开头的代码行就表示这将是一个for循环
。x
是自己设定的一个变量,也可以用字母a
或者其他的名字,它就只是一个很普通的变量。in
是一个连接词,后面跟着的是一个“范围”,这个“范围”就是前面那个变量x
的取值范围。冒号:
是这一行的结尾,表示下面的就是要重复执行的那些命令。在这个例子里就是第2行的print(x)
。同样注意,要重复执行的命令的代码行前面要比有for
关键词的那一行的开头多4个空格。
所以这段代码的意思就是,将列表['李甜甜', 465, 35.7, '来日方长', '今天天气不错。', 485647.48]
中的每个变量,都执行print(x)
的命令。也就是在屏幕上打印出来。
执行结果如下图:
相比较前面一些章节的内容,这一节的内容会不会感觉稍微复杂一些呢?没关系,再多看几遍,网上查查相关资料,结合起来思考思考,我想应该还是挺容易理解的吧。加油加油!
可以把自己的代码留在评论区,作为自己学习的脚印,大家也可以互相交流讨论互相学习哈!