python流程控制
if条件分支语句
python语句是通过一条或多条语句执行的结果(True/False)来决定执行的代码块。
-
if单分支语句
if 逻辑语句: 语句(块) demo: num=6 if nmu%2==0: print(str(num)+'是个偶数')
-
if 双分支语句
if 逻辑语句1: 语句(块)1 else: 语句(块)2 demo: num=6 if num%2==0 : print(str(num)+'是个偶数') else: print(str(num)+'是个奇数')
-
if 多分支语句
python 中,elif:else if缩写为elif
if 逻辑语句1: 语句(块)1 elif 逻辑语句2: 语句(块)2 ... elif 逻辑语句 n-1: 语句(块)n-1 else: 语句(块)n demo:(根据百分制成绩返回五档成绩) score=int(input('请输入成绩')) if score in range(90,101): print('you get a A') elif score in range(80,90): print('you get a B') elif score in range(70,80): print('you get a C') elif score in range(60,70): print('you get a D') elif score in range(0,60): print('you get a E') else: #当输入错误数据时 print('???')
从控制台输入一个三位数,判断其是否为水仙花数。
153=13=+53+3^3
num=int(input('请输入一个三位数:')) high=num//100 second=(num%100)//10 low=(num%100)%10 if num==(high**3+second**3+low**3): print('这是一个水仙花数') else: print ('这不是一个水仙花数')
while语句
-
循环语句
- 所谓循环语句就是用来执行部分代码在一定条件下重复执行的代码。
while 判断语句: 语句(块) demo: time=0 while True: time+=1 print('fun!') if time==5: break
用while打印1-100的数字 并计算他们的和
count=0 num=0 while True: num+=1 count+=num print(num) if num==100: print (count) break
用while分别求1-100内所有的奇数和、偶数和
num=1 count_odd=0 count_even=0 while num <= 100: if num%2==1: count_odd+=num else: count_even+=num num+=1 print ('100以内的奇数和为:%d,偶数和为:%d'%(count_odd,count_even))
用while求所有3位数内的水仙花数
num=100 while num <1000: hundreds = num // 100 Tens = (num % 100) // 10 Single_digit = (num % 100) % 10 if num == (hundreds ** 3 + Tens ** 3 + Single_digit ** 3): print('%d是一个水仙花数'%num) num+=1
for循环
python中for,可以用来遍历任何序列(字符串,列表,元组)
for i in 序列:
语句(块)
1.range()
range(end)#[0,end-1]
range(start,end)#[start,end-1]
range(start,end,step)#[start,start+step*1+...+strat+step*n]
demo
for i in range(1,101):#打印1-100的数
print(i,end=' ')
for i in range(2,101,2):#打印0-100的偶数
print(i,end=' ')
break和continue
-
break原来结束一个循环,即跳出循环体。
-
continue终止本次循环的动作,直接进入下次循环。
for i in range(10): if i ==5: continue print(i,end=' ') #0 1 2 3 4 6 7 8 9 for i in range(10): if i==5: break print(i,end=' ') #0 1 2 3 4
while…else…
while和else是一起的
当有break或return时就会跳出while并不执行else的内容,如果没有while,则无论while是否执行,都会执行else语句
i=0
while i<5:
print(i,end=' ')
i+=1
else:
print()
print('now i is',i)
结果:
0 1 2 3 4
now i is 5
#使用break
i=0
while i<5:
print(i,end=' ')
i+=1
if i ==3:
break
else:
print()
print('now i is',i)
结果:
0 1 2
#使用continue
i=0
while i<5:
i+=1
if i ==3:
continue
print(i, end=' ')
else:
print()
print('now i is',i)
结果:
1 2 4 5
now i is 5
#while内内容不执行
i=5
while i<5:
print(i,end=' ')
i+=1
else:
print()
print('now i is',i)
结果:
now i is 5
for…else…
for…else …与 while …else…用类似
i=0
for i in range(5):
if i ==3:
pass
print(i, end=' ')
else:
print()
print('now i is',i)
结果:
0 1 2 3 4
now i is 4
#使用break
i=0
for i in range(5):
if i ==3:
break
print(i, end=' ')
else:
print()
print('now i is',i)
结果:
0 1 2
#使用continue
i=0
for i in range(5):
if i ==3:
continue
print(i, end=' ')
else:
print()
print('now i is',i)
结果:
0 1 2 4
now i is 4
#for内内容不执行
i=5
for i in range(0,0):
print(i,end=' ')
else:
print()
print('now i is',i)
结果:
now i is 5