程序控制流程(三大流程)
前言——前面我们学习的白能量,运算符,其本质都是一个语句内(表达式内部)的运算的规则
很多代码,代码如何执行,某行代码执行多少次,这些都是由程序控制流程控制
一、顺序结构:
python是脚本语言
python代码会从上到下执行,从左到右执行(:隔开)
二、选择(分支)结构:
单分支:
if 条件:
#执行条件满足的语句
注意:
1、括号问题,可以有,也可以没有
2、python遇到冒号(:),必须缩进
3、不要混用空格和tab!!!
双分支:
if 条件 :
#执行条件满足的语句
else:
#执行条件不满足的语句
多分支(三分支):
if 条件 1:
#执行条件1满足的代码
elif 条件2:
#执行条件2满足的代码
elif 条件3:
#执行条件3满足的代码
............
elif 条件n:
#执行条件n满足的代码
else:
#剩余情况
3、循环:(往复执行)
| - while
| - for
注意:需要大量的练习来加强循环和之前的内容
while循环
语法结构:
while 条件:
#循环体
(当while的条件成立,循环体一直执行)
例如:求0-100的和:
sum=0
index=0
while index<=100:
sum+=index
index+=1
print(sum)
三、break,continue关键字
break:终止某次循环
continue:跳过本次循环,进入下一次循环
四、for循环
python中的for循环,本质是用来迭代容器中的元素的
for 变量 in 容器:
每次会取出一个容器中的元素放在这个变量中
print(变量)
range函数:
range函数是个前闭后开的区间
例如:range(10) 可以取到0,不可以取到10,表示0~10,[0,10)区间内的整数
range(start,end) 表示{start,end)区间内的整数
range(start,end,step) 表示{start,end)区间内的整数,第三个参数表示步长
while循环案列:
1、求1-100的乘积:
index=1
ji=1
while index<=100:
ji*=index
index+=1
print(ji)
2、求30-200的偶数的和
index=30
heji=1
while index<=200:
if index%2==0:#判断是否为偶数
heji*=index
index+=1(注意!!!这段语句实在while循环中的,不可添加到if语句中!!!)
print(heji)
3、求30-200的偶数的和
index=30
count=0
while index<=200:
if index%2==0:
count+=index
index+=1
print("30-200偶数和{}".format(count))
4、求30-200的偶数和奇数的和
index=30
count_even=0#偶数和
count_odd=0#奇数和
while index<=200:
if index%2==0:
count_even=index
else:
count_odd+=index
index+=1
print("30-200偶数和{}".format(count_even))
print("30-200奇数和{}".format(count_odd))
5、存在一个三位数,这个三位数能够被5,6,7同时整除,求这些三位数(穷举法)
index=100
while index < 1000:
if index %5 ==0 and index%6 == 0 and index%7 ==0:
print("{}可以被5 6 7 同时整除.format(index))
index += 1
6、打印一张图 如下所示: 要求层数有用户决定
+
++
+++
++++
…
方案一、
layer=int(input("用户需要打印的层数:"))
index=1
while index<=layer:
print("+"*index)
index+=1
方案二、
layer=int(input("请输入要打印的层数:”)
index = 1
while index <= layer: #控制行数
j=1
while j <= index: #控制列数
print("+",end=' ') #打印输出时不换行
j+=1
print(" ") #表示换行
index+=1
7、打印一张九九乘法表
第一种、
index=1
while index <= 9: #控制行数
second=1
while second<=index
print("{} X {}={}".format(second,index,index*second),end=" ")
second+=1
print()
index+=1
第二种、
for i in range(1,10):
for j in range (1,i+1):
print("{} x {} = {}".format(j,i,i*j),end=" ")
print(" ")
第三种、
for i in range(1,10):
j=1
while j <= i:
print("{} x {} = {}".format(j,i,i*j),end=" ")
j += 1
print(" ")