Python学习笔记——第五章、程序流程控制

第5章 程序流程控制

5.1分支语句

即条件语句。有三种结构:

if 结构

# if语句
score=int(input('请输入一个0~100的整数:'))
if score >= 85:
    print('您真优秀')
    
if score < 60:
    print('您需要加倍努力')
    
if (score >= 60) and (score< 85):
    print('您的成绩还可以,仍需加倍努力!')

请输入一个0~100的整数:

if-else结构

score=int(input('请输入一个0~100的整数:'))
if score >= 60:
    if score >= 80:
        print('您真优秀')
    else:
        print('您的成绩还可以,仍需加倍努力!')
else:
    print('您需要加倍努力')
请输入一个0~100的整数:

if-elif-else结构

score=int(input('请输入一个0~100的整数:'))
if score >= 90:
    grade = 'A'
elif score >= 80:
    grade = 'B'
elif score >= 70:
    grade = 'C'
elif score >= 60:
    grade = 'D'
else:
    grade = 'F'
print('Grade='+ grade)
请输入一个0~100的整数:

5.2循环语句

Python支持两种循环语句:while和for。

while语句

while循环条件:
循环体语句组
[else:
语句组]

当遇到break、return和有异常情况下都会中断循环

i=0
while i*i<1000:
    i=i+1
print('i='+str(i))     #str()字符串函数
print('i*i='+str(i*i))
i=32
i*i=1024
i=0
while i*i<10:
    i=i+1
    print(str(i)+'*'+str(i)+'=',i*i)
else:
    print('While Over!')

1*1= 1
2*2= 4
i=0
while i*i<10:
    i=i+1
    if i==3:    #添加判断,在i==3时终止循环
        break 
    print(str(i)+'*'+str(i)+'=',i*i)
else:           #else循环体被中断,不执行else语句
    print('While Over!')
1*1= 1
2*2= 4

for语句

Python中只有一种for语句,即for-in语句,它可以遍历任何可迭代对象中的元素。
*可迭代对象包括:字符串、列表、元组、集合和字典等。

在这里插入图片描述

#声明整数列表
number=[5,78,37,999]
for item in number:
   print(item)
5
78
37
999
for item in range(10):
   print(item)
else :
   print('Over!')
0
1
2
3
4
5
6
7
8
9
Over!
for item in range(10):
   if item==5:
      break
   print(item)
else :
   print('Over!')
0
1
2
3
4

跳转语句

跳转语句能够改变程序的执行顺序,包括break、continue和return。
break语句用于强行退出循环体,不再执行循环体中剩余的语句。

continue语句用于结束本次循环,跳过循环体中尚未执行的语句,接着进行终止条件的判断,以决定是否继续循环。

for item in range(6):
    if item==3:
       continue    #continue之后的语句不再执行,接着进入下次循环
    print(item)
0
1
2
4
5

计算水仙花数

水仙花数:一个三位数,三位数各个位数的立方之和等于三位数本身。

#计算水仙花数
for n in range (100,1000):
    m1 = n%10#个位
    m2 = ( n//10)%10#十位
    m3 = n//100#百位
    if (m1**3+m2**3+m3**3==n):
        print(n)
        
for A in range(1, 10):
    for B in range(0, 10):
        for C in range(0, 10):
            if (A ** 3 + B ** 3 + C ** 3 == A * 100 + B * 10 + C):
                print(100 * A + 10 * B + C)
                
i=100;r=0;s=0;t=0
while i<1000:
    r=i//100
    s=(i-r*100)//10
    t=(i-r*100)%10
    if (i==r**3+s**3+t**3):
        print(i)
    i=i+1
153
370
371
407
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值