You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python 3.x循环重复输出相同结果?如何实现逐行输出不同内容?

看起来你是想让循环输出不同风速下的风寒指数结果对吧?原代码的问题在于只计算了单次输入风速对应的风寒值,循环的时候只是重复打印同一个结果,完全没在循环内更新风速变量。咱们来调整一下,让风速在循环里逐次变化,这样每行输出的结果自然就不一样了。

修改后的完整代码

from math import *

def main():
    tempF = eval(input('Enter air temperature (F): '))
    startingVelocity = eval(input('Enter starting wind speed (mph): '))
    
    # 设定风速变化规则:从输入的起始风速开始,每次增加4mph,直到60mph(可按需调整范围和步长)
    for wind_speed in range(startingVelocity, 61, 4):
        # 计算旧版风寒指数
        OldStyleWC = round(0.081 * (3.71*sqrt(wind_speed) + 5.81 - 0.25 * wind_speed) * (tempF - 91.4) + 91.4, 1)
        # 补全新版风寒指数公式并计算
        NewStyleWC = round(35.74 + 0.6215 * tempF - 35.75 * (wind_speed ** 0.16) + 0.4275 * tempF * (wind_speed ** 0.16), 1)
        
        # 逐行格式化输出当前风速对应的结果
        print(f"风速: {wind_speed} mph | 旧版风寒指数: {OldStyleWC}°F | 新版风寒指数: {NewStyleWC}°F")

if __name__ == "__main__":
    main()

关键改动说明

  1. 让风速在循环中动态变化:
    用range(startingVelocity, 61, 4)生成了一组递增的风速值——从你输入的起始风速(比如44mph)开始,每次加4mph,直到60mph为止。你可以自由调整:

    • 要递减的话改成range(startingVelocity, 9, -4)(从44降到10)
    • 要固定循环次数的话,比如循环5次:for i in range(5): wind_speed = startingVelocity + i*4
  2. 用循环变量替换固定风速:
    把原来的startingVelocity替换成循环里的wind_speed,这样每次循环都会用当前的风速重新计算风寒指数,结果自然各不相同。

  3. 格式化输出更清晰:
    用f-string把风速和两个风寒指数整合到一行,输出内容一目了然。

测试输入效果

当你输入气温30°F、风速44mph时,输出会是这样的逐行不同结果:

风速: 44 mph | 旧版风寒指数: 13.3°F | 新版风寒指数: 11.9°F
风速: 48 mph | 旧版风寒指数: 11.8°F | 新版风寒指数: 10.3°F
风速: 52 mph | 旧版风寒指数: 10.5°F | 新版风寒指数: 8.9°F
风速: 56 mph | 旧版风寒指数: 9.3°F | 新版风寒指数: 7.7°F
风速: 60 mph | 旧版风寒指数: 8.3°F | 新版风寒指数: 6.6°F

内容的提问来源于stack exchange,提问作者loopis432

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:33:17