如何在Python中实现指定循环次数的数值分级判断
解决方案
方法1:使用for循环(已知循环次数时更简洁)
直接利用range()函数生成对应次数的循环,逻辑清晰不易出错:
# 获取循环次数,转成整数类型 loop_times = int(input("请输入循环执行的次数:")) for _ in range(loop_times): # 每次循环接收数值输入并转成整数 num = int(input("请输入数值:")) # 根据区间判断输出 if 50 <= num <= 60: print('5') elif 40 <= num <= 49: print('4') elif 30 <= num <= 39: print('3') elif 0 <= num <= 29: print('U') else: # 处理超出指定区间的情况,可选 print("输入数值不在有效区间内")
方法2:使用while循环(解决你之前的实现问题)
如果一定要用while循环,需要维护一个计数器来控制循环次数:
loop_times = int(input("请输入循环执行的次数:")) count = 0 # 初始化计数器 while count < loop_times: num = int(input("请输入数值:")) # 区间判断逻辑和上面一致 if 50 <= num <= 60: print('5') elif 40 <= num <= 49: print('4') elif 30 <= num <= 39: print('3') elif 0 <= num <= 29: print('U') else: print("输入数值不在有效区间内") count += 1 # 每次循环结束计数器加1,避免死循环
关键注意点
- 输入的循环次数和数值都需要转成
int类型,否则会是字符串无法进行数值比较 - 区间判断要覆盖所有指定范围,注意边界值(比如50、60、40这些临界值)
- while循环必须更新计数器,否则会陷入死循环
内容的提问来源于stack exchange,提问作者ruff
相关产品推荐
相关产品推荐

