Python支持来自数学的通常逻辑条件:
- 等于:a == b
- 不等于:a != b
- 小于:a < b
- 小于或等于:a <= b
- 大于:a > b
- 大于或等于:a >= b
这些条件可以以多种方式使用,最常见的是在"if语句"和循环中使用。
if语句是使用if关键字编写的。
示例,if语句:
a = 33
b = 200
if b > a:
print("b is greater than a")
在这个示例中,我们使用了两个变量a和b,它们被用作if语句的一部分,以测试b是否大于a。由于a是33,b是200,我们知道200大于33,因此我们打印到屏幕上:"b is greater than a"。
缩进
Python依赖于缩进(行首的空格)来定义代码中的作用域。其他编程语言通常使用大括号来实现此目的。
示例,if语句,没有缩进(会引发错误):
a = 33
b = 200
if b > a:
print("b is greater than a") # 这将引发错误
Elif
elif关键字是Python的一种方式,即“如果前面的条件不成立,那么尝试这个条件”。
示例
a = 33
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")
在这个示例中,a等于b,因此第一个条件不成立,但elif条件成立,所以我们打印到屏幕上:"a and b are equal"。
Else
else关键字捕获前面的条件没有捕获到的情况。
示例
a = 200
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")
else:
print("a is greater than b")
在这个示例中,a大于b,因此第一个条件不成立,同时elif条件也不成立,所以我们进入else条件并打印到屏幕上:"a is greater than b"。您还可以使用else而不使用elif:
示例
a = 200
b = 33
if b > a:
print("b is greater than a")
else:
print("b is not greater than a")
简短的if语句
如果您只有一个语句要执行,可以将它放在与if语句相同的行上。
示例,一行if语句:
if a > b: print("a is greater than b")
简短的if ... else语句
如果您只有一个if语句和一个else语句要执行,可以将它们全部放在同一行上:
示例,一行if else语句:
a = 2
b = 330
print("A") if a > b else print("B")
这个技术称为三元操作符或条件表达式。
您还可以在同一行上有多个else语句:
示例,一行if else语句,带有3个条件:
a = 330
b = 330
print("A") if a > b else print("=") if a == b else print("B")
And
and关键字是逻辑运算符,并用于组合条件语句:
示例,测试a是否大于b,并且c是否大于a:
a = 200
b = 33
c = 500
if a > b and c > a:
print("Both conditions are True")
Or
or关键字是逻辑运算符,用于组合条件语句:
示例,测试a是否大于b或a是否大于c:
a = 200
b = 33
c = 500
if a > b or a > c:
print("At least one of the conditions is True")
Not
not关键字是逻辑运算符,用于反转条件语句的结果:
示例,测试a是否不大于b:
a = 33
b = 200
if not a > b:
print("a is NOT greater than b")
嵌套if
您可以在if语句内部使用if语句,这称为嵌套if语句。
示例
x = 41
if x > 10:
print("Above ten,")
if x > 20:
print("and also above 20!")
else:
print("but not above 20.")
pass语句
if语句不能是空的,但是如果由于某种原因您的if语句没有内容,请添加pass语句以避免出错。
示例
a = 33
b = 200
if b > a:
pass
最后
为了方便其他设备和平台的小伙伴观看往期文章,链接奉上:
公众号搜索Let us Coding
,阿里开发者社区,InfoQ,CSDN,腾讯开发者社区,思否,51CTO,掘金,helloworld,慕课,博客园
看完如果觉得有帮助,欢迎点赞、收藏和关注