第四章选择与循环
if…Else语句
if语句
常用的条件语句:
等于:a==b
不等于:a!=b
小于:a<b
大于:a>b
大于或等于:a>=b
如:
a = 33
b = 200
if b > a:
print("b 大于 a")
返回 :b 大于 a
elif语句
如果前面的if条件是不正确的,那就试试运行elif条件。
a = 33
b = 200
if b > a:
print("b 大于 a")
输出:a 等于 b
在这例子中a,b不符合第一个条件,但elif大的条件成立,所以输出: print(“a 等于b”)。
else语句
可以没有elif,可以有一个else。
a = 33
b = 33
if b > a:
print("b 大于 a")
elif a == b:
print("a 等于b")
在其他的关键字捕获任何未通前面的条件抓获。
a = 200
b = 33
if b > a:
print("b 大于 a")
else:
print("b 小于 a")
返回:a 小于 b
解释:在这个例子中a大于b,所以第一个条件不成立,elif条件也不成立,所以运行else条件输出。
and语句
a = 200
b = 33
c = 500
if a > b and c > a:
print("两种条件都满足")
解释:必须同时满足两种判定条件才可输出。
or语句
测试if a是否大于b,或if a大于c:
a = 200
b = 33
c = 500
if a > b or a > c:
print("At least one of the conditions is True")
解释:满足其中一个条件即可输出。
嵌套循环if语句
x = 41
if x > 10:
print("Above ten,")
if x > 20:
print("and also above 20!")
else:
print("but not above 20.")
解释:两个if循环内外套,通常由内而外推到逻辑关系较为简单。(个人建议因人而异)
pass语句
a = 33
b = 200
if b > a:
pass
编写原因解释:if语句判定后输出不能为空,如果有特殊需要有一个if语句,没有该内容,将pass语句写入避免该程序报错。
while循环
基本逻辑的理解
使用while循环,只要判定条件为真,即可执行对应的输出语句。
例如:只要i小于6就可以输出i
i = 1
while i < 6:
print(i)
i += 1
输出的返回值:
1
2
3
4
5
(个人理解:陷入类似死循环的状态。)
截至中断声明
使用break语句,即使while判定语句结果为真,也可以停止循环;跳出终止当前循环,跳出循环体。
循环体:
例如:当i为4时退出循环。
i = 1
while i < 6:
print(i)
if i == 4:
break
i += 1
输出返回值:
1
2
3
4
continue使用方法
使用continue语句,可以停止当前循环,但可以进行下一个。
i = 0
while i < 6:
i += 1
if i == 4:
continue
print(i)
输出返回值:
1
2
3
5
6
else语句
使用else语句,当条件不为真时,运行输出对应代码;如果条件为假时,则输出假对应的代码。
i = 1
while i < 9:
print(i)
i += 1
else:
print("小王同志最帅")
输出返回值:
1
2
3
4
5
6
7
8
小王同志最帅
for循环语句
遍历结构
如遍历字符串:
for x in "banana":
print(x)
输出返回值:
b
a
n
a
n
a
截至中断break语句
break语句的作用:终止当前循环,跳出循环体。
bingo ='清蒸'
answer = input('小甲鱼清蒸好吃还是炖了好吃?')
while True:
if answer == bingo:
break
answer = input('抱歉,错了,请重新输入(答案正确才能图出游戏)')
print('对嘛,只有清蒸才能原滋原味~')
输出返回值:
小甲鱼清蒸好吃还是炖了好吃?清蒸
对嘛,只有清蒸才能原滋原味~
另一种情况:
小甲鱼清蒸好吃还是炖了好吃?
抱歉,错了,请重新输入(答案正确才能图出游戏)
continue语句
continue语句的作用:跳出本轮循环并开始下一轮循环。
注意:开启下一轮循环之前,会先测试条件。break语句是跳出整个循环。
如:break语句
fruits = ["a", "b", "c"]
for x in fruits:
if x == "b":
break
print(x)
输出返回值:
a
解释:当等于b时,就会跳出整个循环不再执行。
continue语句
fruits = ["a", "b", "c"]
for x in fruits:
if x == "b":
continue
print(x)
输出返回值:
apple
cherry
解释:continue语句只是截至当前循环,还会进行下一循环。
将break和continue对比来看,就可以很好理解。有关跳出当前循环和跳出整个循环体的区别。
else语句
格式:
for 变量 in
循环体
else:
条件不成立执行的内容
注意:按正常的逻辑思维如果条件不成立的情况下,自然是要执行另一输出语句。else可以是可有可无的。但else是又存在的必要的。
如:
sum = 0
for i in range(101):
sum += i
else:
print(sum)
输出返回值:
5050
另一种情况:
sum = 0
for i in range(101):
sum += i
print(sum)
返回输出值:
会将每次循环的得数输出,由于太多可以自己去试试。
通过两种情况的对比,就可以感觉出else的作用了。这里便不再做过多的解释了。
嵌套for循环
zimu = ["r", "b", "t"]
fruits = ["apple", "banana", "cherry"]
for x in zimu:
for y in fruits:
print(x, y)
返回输出值:
r apple
r banana
r cherry
b apple
b banana
b cherry
t apple
t banana
t cherry
逻辑关系:首先判断外层循环,符合后执行内层的循环,直到内部循环不符合判定条件,转为下一个的外部循环。以此类推直到所有循环完成。
解释:两个for循环内外套,通常由内而外推到逻辑关系较为简单。(个人理解建议因人而异)
pass语句
for x in [0, 1, 2]:
pass
编写原因解释:for语句判定后输出不能为空,如果有特殊需要有一个for语句,没有该内容,将pass语句写入避免该程序报错。