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

Python类错误排查:TypeError: User() takes no arguments问题

问题解决:User类实例化TypeError错误

错误原因

你误将Python类的初始化方法写成了__int__,但正确的构造/初始化方法是__init__。__int__是用于将对象转换为整数的特殊方法,不负责处理实例化时的参数传递,所以当你传参数创建User实例时,Python找不到对应的参数处理逻辑,就抛出了TypeError: User() takes no arguments。

修正代码

先看错误的代码示例:

class User:
    # 错误:写成了__int__
    def __int__(self, user_id, name):
        self.user_id = user_id
        self.name = name

# 执行这行会报错
user = User("007", "Amul")

将__int__改为__init__即可解决问题,修正后代码:

class User:
    # 正确:使用__init__初始化实例
    def __init__(self, user_id, name):
        self.user_id = user_id
        self.name = name

# 正常实例化
user = User("007", "Amul")
print(user.user_id)  # 输出:007

补充说明

__init__是Python类的核心初始化方法,创建类实例时会自动触发它来绑定实例属性,必须严格拼写为双下划线+init+双下划线,任何拼写错误都会导致初始化逻辑失效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 06:20:41