04-逻辑判断和循环
1. 条件控制
Python
条件语句是通过一条或多条语句的执行结果(True
或者 False
)来决定执行的代码块。
大致的流程如下:
1. if
语句
if
语句的含义就是如果条件成立,那么就执行该if
语句下的代码;如果条件不成立,则跳过这一段代码,执行下面的代码。
并且,通常来说,if
关键字是与elif
关键字和else
关键字搭配来使用的。elif
关键字表示另外的一个条件, else
表示如果以上条件都不满足,则执行else
下的代码。
num = int(input())
if 60 >= num > 50:
print("大于50")
elif 60 < num <= 70:
print("大于60小于70")
else:
print("太大了")
上述代码就表示:当输入的数字大于50小于等于60时,就会打印:大于50;如果输入的数字大于60小于70,则打印:大于60;如果以上两个条件都不满足,则会直接输出:太大了。
这就是if
语句的基本用法。
注意事项:
- 每个条件后面要使用冒号
:
,表示接下来是满足条件后要执行的语句块。在下一行的条件语句中,需要进行缩进4个空格,表示代码块; if
条件判断中,可以没有elif
,也可以没有else
,但是不能没有if
,并且if
语句下的条件语句,必须要有缩进, 否则不能表示该条件语句所属if
语句代码块。
2. 循环
在python
中,循环 有两种方法:一种是for
循环,也就做遍历,一种是while
循环。
1. for
循环
for
循环表示对某一个对象进行遍历,这个对象可以是字符串,可以是列表,也可以是字典; 同时for
循环也可以与range()
方法配合使用,来循环生成一个数组数列。
for
循环的大致流程如下:
range()
使用
这个函数可以根据传入的参数,来自动生成一组数字数列。
如果传入两个参数,分别代表开始位置,和结束位置,那么range()
方法会生成一个从开始数字,一直到结束数字前一个的数字的数字列表;
如果传入一个参数,这个参数表示结束位置,那么range()
会默认从0开始生成一个数字数列。
for i in range(1, 5):
print(i) # 1 2 3 4
for i in range(5):
print(i) # 0 1 2 3 4
for
循环可以配合着else
语句使用,表示当结束for
循环时,执行else
语句中的代码。
# 先是for循环,打印出0 1 2 3 4来,然后当循环结束时,打印"hello world"
for i in range(5):
print(i)
else:
print("hello world")
2. while
循环
while
循环通常用来执行当条件成立时,一段代码 会一直 运行下去。
它的大致流程是这样的:
count = 0
while count < 5:
print("hello {}".format(count))
count += 1
"""
hello 0
hello 1
hello 2
hello 3
hello 4
"""
在写while
循环时 ,一定要注意一点:在循环体内部,要设置循环结束的条件,否则while
循环会一直循环下去,成为死循环。
3. break
和continue
break
表示在循环体内部,当 达到某种条件时,结束全部的循环;
continue
表示在循环体内部,当达到某种条件时,结束当前次循环, 并进行当前循环的其余循环。
break
循环执行图:
continue
循环执行图:
# 当count=2时,跳过循环,执行下一轮的循环
count = 0
while count < 5:
if count == 2:
count += 1
continue
print("hello world {}".format(count))
count += 1
"""
hello world 0
hello world 1
hello world 3
hello world 4
"""
# 当count=2时,结束循环,剩余的循环和当前次循环中剩余的代码不会执行
count = 0
while count < 5:
if count == 2:
break
print("hello world {}".format(count))
count += 1
"""
hello world 0
hello world 1
"""