python从入门到就业-循环分支语句

分支语句-if

单分支判断

age = 18
if (age>= 18):
    print("您已经成年")

缩进来确定分支的限定范围(对应的代码块)

双分支判断

age = 18
if (age >= 18):
    print("您已经成年")
    print("可以去上网")
else:
    print("赶紧回家")

score = int(input("请输入您的成绩(0-100):"))
if (100 >= score >= 90):
    print("优秀")
elif (90 > score >= 80):
    print("良好")
elif (80 > score >= 60):
    print("及格")
else:
    print("不及格")

注意

  1. 强制缩进

  1. if 和else是按照缩进的位置进行匹配的

  1. 不要写太多嵌套语句

  1. python中没有switch case

分支示例

print("欢迎使用体脂率计算小程序")
sex = input("请输入您的性别m or f ")
height = float(input("请输入您的身高(m)"))
weight = float(input("请输入您的体重(kg)"))
age = int(input("请输入您的年龄"))
if(sex == "m"):
    sex = 0
else:
    sex = 1
if not((sex == "m" or sex == "f") and (0 < height < 3) and (0 < age <150) and (0 < weight < 300)):
    exit()  #退出程序
BMI = weight / (height * height)
rate = (1.2*BMI + 0.23*age -5.4 - 10.8*sex)/100
print("BMI = {}".format(BMI))
print("体脂率 = {}".format(rate))
if (sex == 0):
    print("女士您好",end = "")
    if(0.25 < rate < 0.28):
        print("恭喜您,身体非常健康,请继续保持")
    elif(rate < 0.25):
        print("请注意,您的身体偏瘦")
    else:
        print("请注意,您的身体偏胖")
else:
    print("先生您好",end = "")
    if(0.15<rate<0.18):
        print("恭喜您,身体非常健康,请继续保持")
    elif(rate < 0.15):
        print("请注意,您的身体偏瘦")
    else:
        print("请注意,您的身体偏胖")

循环语句

基本用法示例

sum = 0
num = 0
while(num <= 10):
    sum += num
    num +=1
print("1-10的相加和为{}".format(sum))

while-else

sum = 0
num = 0
while(num <= 10):
    sum += num
    num +=1
else:
    print("计算程序执行完毕")
print("1-10的相加和为{}".format(sum))

*while 执行完之后便会执行else语句(有break的情况除外!

  1. 要注意防止死循环

  1. 没有类似于 do ... while语句

for 循环

更多用于遍历集合(有许多内容的数据结构 ,并不是集合类型

语法:for x in XXX:

循环语句

for i in range(10):
    print(i)

a = "hello world"
for c in a:   #c可以随意取名,简明易懂最好
    print(c)
pets = ["dog", "cat", "sheep", "milk"]
for pet in pets:
    print(pet)

for -else

pets = ["dog", "cat", "sheep", "milk"]
for pet in pets:
    print(pet)
else:
    print("打印完成")

*for 执行完之后便会执行else语句(有break的情况除外!

例子

#实现字符串的反转
result = ""
a = "hello world"
for c in a:
    result  = c + result
print(result)
for i in range(1,101):
    if i%2 == 0:
        print(i," ",end = "")

循环打断

对else的影响

如果程序正常执行完毕,则会执行else
如果中途因为打断而退出循环,则不会执行else部分

break

打断本次循环,跳出整个循环

continue

结束本次循环,继续执行下次循环

例1

range(a,b) 则可以取到a~b-1的整数

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

例2

while(1):
    num1 = float(input("请输入第一个数据:"))
    num2 = float(input("请输入第二个数据:"))
    result = num1 + num2
    if(num1 > 100 or num2 >100):
        print("输入数据不能大于100哟,请重新输入")
        continue
    print("加法的最终结果为",result)
    isQ = input("是否想要退出,输入q即为退出")
    if(isQ == 'q'):
        break;

循环分支相互嵌套

循环内嵌套if

i = 1
while(i <= 100):
    if i%3== 0:
        print(i," ",end="")
    i += 1 

循环嵌套循环

for i in range(6):
    for j in range(2):
        print(j," ",end = "")

外层循环执行一次,内层循环执行全部

例子

九九乘法表

for i in range(1,10):
    for j in range(1,i+1):
        print(i, "*", j, "=", i*j, " ", end = "")
    print("")

pass语句

概念

pass语句是空语句

一般不做任何事情,当作占位符

作用

保证程序结构的完整性

i = 10
if i>9:
    pass
else:
    pass #暂时占位 后面可以填充

案例

水仙花数

while(1):
    num = int(input("水仙花数小程序,请输入三位数值:"))
    if not(99 <num < 1000):
        print("您输入的数据不符合要求,请重新输入")
        continue
    if (num == (num//100)**3 + ((num%100)//10)**3 + (num%10)**3):
        print(num,"是水仙花数")
    else:
         print(num,"不是水仙花数")
    break

猜数游戏

num = 500
count = 0
while(True):
    guess = int(input("请输入你所猜的数据"))
    count += 1
    if(guess == num):
        print("恭喜您,猜对啦!您总共猜了%d次"%count)
        break
    elif(guess <num):
        print("您所猜测的数字偏小")
    else:
        print("您所猜测的数字偏大")

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值