python中的程序控制流程:
一、选择结构
if else选择执行语句:
条件语句是通过对一条或多条语句做出判断(True或False)根据结果来选择应该执行哪一步命令的。
条件判断语句总共有三种形式:
① 单项判断if
先判断if条件是否满足:若条件满足,则运行结果
命令逻辑:如果…就…
命令格式:if条件后跟英文冒号,回车后自动缩进
例:
num=6
if num>=6:
print('你拥有了毁灭宇宙的力量')
注:
对于Python而言,冒号和缩进是一种语法。它会帮助Python区分代码之间的层次,理解条件执行的逻辑及先后顺序。
② 双向判断if…else…
先判断if条件是否满足:若条件不满足,则运行else条件下的结果
总的来说:if…else…双向判断语句是:如果不满足if的条件,就执行else下的命令,且if…else…自身所代表的条件是互斥的
age = int(input("请输入您的年龄(周岁):"))
if age < 18:
print("对不起,你还没有成年,回家写作业去")
else:
print("成年了,优秀如你,可以负刑事责任了")
注:
在if…else条件语句中,表示的是条件和其他条件的互斥关系——如果不满足if条件,就执行else其他条件。
③ 多向判断if…elif…else…
这三者共同构成了多向判断的命令逻辑关系:如果if的条件不满足,就按顺序看是否满足elif的条件,如果不满足elif的条件,就执行else的命令。
并且,当判断的条件超过3个时,中间的多个条件都可以使用elif。
score = float(input("请输入您的成绩:"))
if score == 100:
print("太秀了,乖乖,没人比你更秀")
elif score >= 85 and score < 100:
print("优秀")
elif score >= 70 and score < 85:
print("良好")
elif score >= 60 and score <70:
print("合格")
elif score > 0 and score < 60:
print("不及格")
elif score == 0:
print("人生难得得个0")
else:
print("对不起,输入错误")
输出结果:
二、循环结构
1、for循环
for循环语句:
它是python语言中的构造循环结构程序的语句之一,python语言中的for语言与其他高级程序设计语言不同,其他高级语言for语句要用循环控制变量来控制循环;python中for语句是通过循环遍历某一序列对象(如:元组,列表,字典等)来构建循环,循环结束的条件就是对象被遍历完成
for语句的形式如下:
for 循环变量 in <遍历对象>:
<语句1>
else:
<语句2>
for语句的语义是遍历for语句中的遍历对象,每次循环,循环变量会得到遍历对象中的一个值,你可以在循环体中处理它;一般情况下,当遍历对象中的值全部用完时,就会自动退出循环
range的全局函数:
至少要有一个参数
①一个参数:默认从0开始:range(num) 0~num-1
# [0, num) 一定要注意:是一个前闭后开的区间
>>> for i in range(5):
... print(i)
...
0
1
2
3
4
②两个参数:range(10, 21),两个参数时,相当于我们指定了开始值
>>> for i in range(2,5):
... print(i)
...
2
3
4
③三个参数:range(5, 100, 2),此时,每两个数,生成一个数
>>> for i in range(1,5,2):
... print(i)
...
1
3
注:
for语句遍历列表,元组,字符串的基本形式是相同的,但对字典的遍历有些不同。因为字典既有键又有值,在遍历时不能直接对字典进行遍历而是通过字典的items()、key()、values()等方法分别遍历其键和值、键、值。如果同时遍历键和值,在遍历时可以使用两个循环变量来分别接受键和值。
例:
>>> adct = {'xixi':15,'haha':10,'lala':23}
>>> for key,value in adct.items():
... print(key,':',value)
... for key in adct.keys():
... print(key)
... for value in adct.values():
... print(value)
2、while循环
While循环语句:
是python语言中构造循环结构程序的语句之一,while语句在python中主要用于构建特别的循环
while语句的基本形式如下:
while<条件>:
<语句1>
else:
<语句2> #如果循环未被break终止,则执行
与for循环不同的是:
while语句只有在测试条件为假时才会停止。在while语句的循环体中一定要包含改变测试条件的语句,以保证循环能够结束,以避免死循环的出现。
While语句包含于if语句相同的条件测试语句:
如果条件为真就执行循环体;如果条件为假,则终止循环。While语句也有一个可选的else语句块,它的作用与for循环中的else一样,当while循环不是由break语句终止的话,则会执行else语句块中的语句,而continue语句也可以用于while循环中,其作用是跳过continue后的语句,提前进入下一个循环。
练习:
求0~100范围内的偶数的和(循环完成)
index=1
sum1=sum2=0
s1=s2=1
while index<101:
if index%2==0:
sum1+=index
s1*=index
else :
sum2+=index
s2*=index
index+=1
print("1~100以内偶数的和为:%s"%sum1)
print("1~100以内偶数的积为:%s"%s1)
print("1~100以内奇数的和为:%s"%sum2)
print("1~100以内奇数的积为:%s"%s2)
结果为:
1) continue关键字
continue关键字一般是在循环中使用,
目的就是提前结束本次循环,开始下一轮循环遍历
while index <= 10:
if index == 5:
# continue终止本次循环
continue
print(index)
index += 1
print("结束")
2) break关键字
中断循环
在循环体中,遇到break关键字,当条件是否满足时,循环直接终止
(即使未遍历完的语句,还是会立即终止循环)
index=1
while index <= 10:
if index == 5:
# break终止了循环
break
print(index)
index += 1
print("结束")
结果为: