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

Python随机数运算程序求助:循环控制与消除None输出

解决你的Python随机数运算程序问题

我来帮你搞定这两个问题,都是Python里很常见的小细节,看完你就能轻松解决啦!

问题1:让运算函数仅运行5次后返回菜单

要实现这个,你只需要在加法、乘法的运算函数里加一个循环控制执行次数就行。用for循环跑5次,每次完成一道运算题,循环结束后函数自然退出,回到菜单界面。

举个加法函数的例子:

import random

def addition_game():
    # 循环执行5次运算
    for _ in range(5):
        num1 = random.randint(1, 20)  # 生成1-20的随机数,范围可自行调整
        num2 = random.randint(1, 20)
        print(f"计算:{num1} + {num2} = ?")
        # 这里可以补充用户输入答案并判断对错的逻辑,比如:
        # user_answer = int(input("请输入你的答案:"))
        # correct_answer = num1 + num2
        # print(f"正确答案是{correct_answer}!你{'答对了' if user_answer == correct_answer else '答错了'}")
    print("\n5道加法题完成!回到菜单~")

# 乘法函数逻辑同理
def multiplication_game():
    for _ in range(5):
        num1 = random.randint(1, 10)
        num2 = random.randint(1, 10)
        print(f"计算:{num1} × {num2} = ?")
        # 同样可补充答案判断逻辑
    print("\n5道乘法题完成!回到菜单~")

问题2:消除输出的“None”

出现None的核心原因是你打印了一个没有返回值的函数调用。比如如果主程序里写了print(addition_game()),但addition_game()函数没有return任何内容,Python会默认返回None,外层的print就会把这个None打印出来。

解决方法超简单:

  • 直接调用函数,不要在外层套print。比如把print(addition_game())改成addition_game();
  • 如果你的函数确实需要返回内容(比如答题正确率),就给它加return语句,避免默认返回None。

最后给你补一个完整的主程序逻辑,把菜单和运算函数串起来:

def options_menu():
    print("\n===== 运算菜单 =====")
    print("a > 加法运算")
    print("m > 乘法运算")
    print("q > 退出程序")

def main():
    while True:
        options_menu()
        choice = input("请选择你的操作:").lower()
        if choice == 'a':
            addition_game()
        elif choice == 'm':
            multiplication_game()
        elif choice == 'q':
            print("感谢使用,再见!")
            break
        else:
            print("输入无效,请重新选择!")

if __name__ == "__main__":
    main()

这样运行起来,每个运算函数都会执行5次后回到菜单,也不会再出现讨厌的None啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:40:35