python流程控制

顺序结构

该结构代码逐行顺序执行:

练习:

例1:输入一个十进制数,转换为二进制、八进制、十六进制数

ans = int(input("请输入十进制数 "))
print(f"二进制:{bin(ans)}")
print(f"八进制:{oct(ans)}")
print(f"十六进制:{hex(ans)}")
print(f"ascii码转换 十进制对应字符{chr(ans)}")

例2:输入一个华氏温度,要求输出摄氏温度,公式为;C=5/9*(F-32)

pendingData = float(input("请输入华氏温度"))
ans=5/9*(pendingData-32)
print(f"华氏温度:{pendingData:.2f} 摄氏温度:{ans:.2f}")

其中.2f是格式化输出的方式在{}内还有许多格式:比如{:0>2}意思是总共占两位 左对齐右侧0补全

选择结构:

在其它语言中存在switch语句 而在python中只有if else语句可以实现选择结构 或者利用字典实现类似Switch的效果

1.小明身高1.75,体重80.5kg。请根据BMI公式(体重除以身高的平方)帮小明计算他的BMI指数,并根据BMI指数:

  • 低于18.5:过轻
  • 18.5-25:正常
  • 25-28:过重
  • 28-32:肥胖
  • 高于32:严重肥胖
xioaming={"weight":80.5,"height":1.75}
BMI=xioaming["weight"]/(xioaming["height"]**2)
print(BMI)
if BMI<=18.5:
    print("过轻")
elif BMI<=25:
    print("正常")
elif BMI<=28:
    print("过重")
elif BMI<=32:
    print("肥胖")
else:
    print("严重肥胖")

 

2.输入一个月,判断季节(让用户输入一个月份,判断这个月是哪个季节?假定3到4月是春季,5到8月是夏季,9到10是秋季,11、12、1、2月是冬季)

month=int(input("请输入一个月份 判断季节"))
while month<0 or month>12:
    month=int(input("月份!!!"))
if month>=11 or month<=2:
    print('冬季')
elif month<=4:
    print('春季')
elif month<=8:
    print('夏季')
elif month<=10:
    print('秋季')
else:
    print('异常')

循环结构

存在for循环 while循环两种

1.猜谜小游戏

while choice=='y':
    inde=random.randrange(len(ans))
    ansstr=ans[inde]
    #打乱字符串
    hestr=ansstr
    i=0
    while ansstr == hestr or i<5:
        heindex=random.randrange(len(ansstr))
        hestr=hestr[heindex:]+hestr[:heindex]
        i+=1
    ychoice=""
    print(f"{hestr}是打乱后的字符 请猜谜")
    while ychoice!="y":
        yans = input()
        if yans == ansstr:
            print("你真厉害")
            break
        else:
            ychoice=input("猜不对吧 要不放弃 输入y来放弃")
    choice=input("是否继续猜谜 输入y以继续:")

2.计算a+aa+aaa+a…a前6项之和(a=2)

利用字符串乘的性质,利用int将字符串转化为整数

a=input("请输入a来计算")
ans=0
for i in range(1,7):
    sum=int(a*i)
    ans+=sum
print(ans)

3.打印九九乘法表

for i in range(1,10):
    j=1
    while j<=i:
       print(f" {i}*{j}={i*j:<2} ",end="")
       j+=1
    print()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值