Python实现1-1000随机数按阈值双向计数功能求助
原代码问题
- 缺少依赖导入:未导入
random模块,直接调用random.randrange会触发名称错误,需要先添加导入语句。 - 向下计数逻辑错误:随机数小于等于500时需要计数到0,原代码range的结束值写为500,步长为-1时循环不会执行,且目标结束值错误,应该设为
-1(range为左闭右开区间,要包含0的话结束值需小于0)。 - 向上计数逻辑错误:随机数大于等于500时需要计数到1000,原代码range的结束值写为500,步长为+1时循环不会执行,且目标结束值错误,应该设为
1001(要包含1000的话结束值需大于1000)。 - 条件判断重复:同时写
daemi3_tala <= 500和daemi3_tala >= 500两个独立if判断,等于500时会进入两个分支,应该用if-else分支避免重复执行。
正确实现代码
import random if keyrsla2 == 3: daemi3_tala = random.randrange(1, 1000) if daemi3_tala < 500: # 小于500时向下计数到0,包含0 for count in range(daemi3_tala, -1, -1): print(count) else: # 大于等于500时向上计数到1000,包含1000,如需把等于500的情况归为向下计数,把上方if判断改为daemi3_tala <= 500即可 for count in range(daemi3_tala, 1001, 1): print(count)
内容的提问来源于stack exchange,提问作者himmispiderman
相关产品推荐
相关产品推荐

