Python第二天笔记——流程控制

Python流程控制

if条件分支语句

Python条件语句是通过一条或多条语句执行的结果(True/False)来决定执行的代码块

  • if单分支:
if 逻辑语句:
   语句()

demo:

print("Hello,Python")

if False:
    print("I'm studying Python.")

print("Welldone.")

#输出结果:
Hello,Python
Welldone.
learning="Python"

if learning == "Python":
    print("I'm studying Python,too.")

#输出结果:
I'm studying Python,too.
  • if双分支:

demo:

learning="Java"
if learning == "Python":
    print("I'm studying Python,too.")
else:
    print("I'm studying Java.")

#输出结果:
I'm studying Java.
  • if多分支:
if
    if
        if
        
        else
    else
else

elif:else if缩写

if 逻辑语句1:
   语句()1
elif 逻辑语句1:
   语句()1
    ...
elif 逻辑语句n-1:
   语句()n-1
else:
   语句()n

#练习题1:根据百分制考试成绩返回五级分制成绩

a=int(input("请输入成绩:"))
if a>100:
    print("最高100分,请重新输入!")
elif a>=90:
    print("A")
elif a>=80:
    print("B")
elif a>=70:
    print("C")
elif a>=60:
    print("D")
else:
    print("E")
    
#输出结果:
请输入成绩:92
A
请输入成绩:59
E
请输入成绩:110
最高100分,请重新输入!

#练习题2:输入一个三位数,判断是否为水仙花数:

x=int(input("请输入一个数"))
a1=x//100
b=x-a1*100
a2=b//10
a3=b%10
a=a1**3+a2**3+a3**3
if x==a:
    print('%s是水仙花数' %(x))
else:
    print('%s不是水仙花数' %(x))
    
#输出结果:
请输入一个数153
153是水仙花数

请输入一个数134
134不是水仙花数

while循环语句

  • 循环语句
    • 就是用来执行部分代码在一定条件下重复执行的代码。

    格式:

    while 逻辑语句:
         语句(块)
    
  1. 利用while打印1-100的数字:
i=1
while i in range(1,101):
    print(i,end=" ")
    i=i+1
    
#输出结果:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15...97 98 99 100

2.利用while打印1-100的和:

sum=0
i=1
while i in range(1,101):
    sum=sum+i
    i=i+1
print(sum)

#输出结果:
5050

http://www.pythontutor.com 代码可视化

3.利用while求1-100内所有偶数的和:

i = 1
sum = 0
while i <= 100:
    if i % 2 == 0:
        sum = sum + i
    i = i + 1
print(sum)

#输出结果:
2550

4.利用while求100-999内所有水仙花数:

x=100
while x<1000:
    a1 = x // 100
    b = x - a1 * 100
    a2 = b // 10
    a3 = b % 10
    a = a1 ** 3 + a2 ** 3 + a3 ** 3
    if x == a:
        print(x, end=' ')
    x=x+1
    
#输出结果:
153 370 371 407 

for循环语句

可以用来遍历任何序列(字符串,列表,元祖,etc.)

格式:

for i in 序列:
    语句(块)

1.range()

range(end) #[0,end-1],end为整数

range(start,end) #[start,end-1],两个数均为整数

range(start,end,step) 
#[start,start+step,start+2*step,...,end-1]

demo:

for i in range(2,101,2):
    print(i,end=' ')

#输出结果:
2 4 6 8 10 12 14 16 18 20 22 24...94 96 98 100

#利用for求100-999内所有水仙花数:

for x in range(100, 1000):
    a1 = x // 100
    b = x - a1 * 100
    a2 = b // 10
    a3 = b % 10
    a = a1 ** 3 + a2 ** 3 + a3 ** 3
    if x == a:
        print(x, end=' ')
  
#输出结果:
153 370 371 407 

break和continue

  • break用来结束一个循环,跳出循环体。
  • continue终止本次循环的动作,直接进入下次循环。

demo:

for i in range(2,15,2):
    if i==10:
        # break
       continue
    print(i,end=" ")

#输出结果
(break):
2 4 6 8 
(continue)2 4 6 8 12 14 

while…else

for…else

while…else和for…else中while和else是一块的,for和else也是一块的。

当有break或return的时候跳出循环;如果没有break或return,不管while是否执行,都会执行else语句。

demo:

a = int(input("请输入一个数:"))
while a <= 5:
    print(a, end=" ")
    a = a + 1
    if a>3:
        break
else:
    print("这里是else语句。")
    
#输出结果:
请输入一个数:1
1 2 3 

请输入一个数:6
这里是else语句。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值