前言:
当我们写程序的时候,我们首要思考的问题是,程序接收什么样的输入,产生什么样的输出。控制用户的输入,进行一系列处理,并最终得到一个输出,这中间的过程就叫做流程控制。我们将会在今天的课程里接触一下这个概念,在下一篇里进行更加详尽的介绍。
流程控制
我们刚刚介绍了流程控制的概念。那么,究竟如何进行流程控制呢?
假设我们的程序要判断一下我们输入的密码是不是正确的。我们会先接收用户的输入,然后拿这个输入的值和另真正的密码进行比较,最后根据比较的结果告诉用户他到底是输入正确还是输入错误,如果输入正确,则提示“输入正确”,如果输入错误,则提示“密码错误”。
这里,例如“判断密码是否正确”“如果正确”这些逻辑判断机制(逻辑推理流程),这就是流程控制。
布尔类型(bool,boolean)
相信大家在数学课上已经学过一些关于一个数是不是比另一个大、两个数是不是相等之类的判断。在流程控制中,这些“判断”操作会经常被用到。判断的结果,无非是“真”(true)或者为“假”(false)。True或者False既是布尔类型变量可以取的值。需要注意的是,在Python里‘True’或者‘False’的首字母必须要大写。
让我们看看,Python语法中的一些基本判断操作,以及他们会返回什么样的布尔类型:
·== 判断符号两边的值是否相等。如果相等,整个算式会返回‘True’,反之为‘Fasle’。
·!=判断符号两边的值是否不等。如果不等,返回‘True’,反之返回‘False’。
·>判断左值是否大于右值
·<判断左值是否小于右值
·>=判断左值是否大于或者等于右值
·<=判断左值是否小于或者等于右值
以上的判断操作既可以用来判断数字,也可以用来判断字符串。再次强调python对大小写敏感,这也意味着如果两个单词字母相同但大小写不同,也会被判断为不一样的单词。
下面我们来试试看:
我们可以看到,“Null-Byte”和“null-byte”并不一样。而当我们把“Null-Byte”转换为全部小写的时候,他们就相等了。
下面来试试数字之间的比较:
下面看看 !=操作符号:
我们拿1337与42进行比较。显然,‘42’与‘1337’不相等这个事是真(True)的所以它返回了True。
我们再拿之前的“Null-Byte”与小写的“null-byte”相比较,他们也是不相等的,所以“他们不相等”这件事返回了True.
最后试试大于等于。
我们可以发现,无论是‘大于’还是‘相等’,都会返回True。
也许你现在会觉得这些东西像小孩子玩过家家一样没有什么用,但是马上你就会意识到这些东西的重要性。这些就是流程控制的基础,也是我们脚本程序的骨骼(框架)。
练习
构建自己的比较语句,想想他们为什么会返回True或者False。多做实验多敲代码。
首字母的大小写不一样,所以返回Fasle.