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

如何将Python的while循环封装为函数?解决封装后仅执行一次的问题

问题排查与解决:函数封装后循环仅执行一次

问题出在return money的位置——你把它写在了while循环的内部,第一次循环执行完毕就直接返回结果,导致循环只跑了一次就终止,无法完成设定的10次迭代。

修正后的函数代码:

import random

def loop():
    money = 100
    bet = 0
    
    while bet < 10:
        outcome = random.randint(0,1)
        bet = bet + 1

        if outcome == 1:
            money = money + 10
        elif outcome == 0:
            money = money - 10
    
    # 把return移到循环外面,确保10次循环全部执行完再返回结果
    return money

# 调用函数查看结果
print(loop())

额外优化:可以用elif替代第二个独立if,让条件判断逻辑更严谨,但这不是影响循环次数的核心问题。核心修复点就是将return语句移出while循环块,放在函数末尾,保证循环完整执行10次后再返回最终的money值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 05:01:11