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

TypeError: input最多接受1个参数却得到4个 个位数加法生成器开发报错

报错原因与完整修复方案

直接报错原因

你看到的TypeError: input expected 1 argument at most got 4错误,是因为Python内置input()函数仅支持传入1个字符串作为提示语,你代码中用逗号分隔传入了4个独立参数(提示文本、两个num变量、"+"字符串),不符合函数入参要求。

其他逻辑问题修复

除了入参错误,你的代码还存在多处逻辑问题,会导致功能不符合预期:

  • num仅在循环外生成一次,10道题会完全重复,需把随机数生成逻辑移到循环内部,每次生成两个独立的个位数
  • list.append()方法无返回值,执行后返回None,把该返回值赋值给q会导致永远无法匹配正确答案
  • score=+1是赋值操作(直接把分数改为1),不是累加操作,正确写法是score += 1
  • 累加两个随机数的逻辑错误,你当前是把用户输入存到列表再求和,和正确答案的计算逻辑完全不符

修复后完整代码

import random 

score = 0

for i in range(10):
    # 每次生成两个独立的随机个位数
    num1 = random.randint(0,9)
    num2 = random.randint(0,9)
    # 用f-string拼接提示语,仅传1个参数给input
    user_answer = int(input(f"What is the answer to: {num1} + {num2} "))
    # 计算正确答案
    correct_answer = num1 + num2
    if user_answer == correct_answer:
        score += 1

print("Your score is: ", score)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 20:15:00