问题记录:TypeError: __init__() takes 1 positional argument but 2 were given

本文记录了在使用PyTorch时遇到的`TypeError: __init__() takes 1 positional argument but 2 were given`问题,分析了可能的原因,包括未加`self`、未实例化类、参数大小不对应等,并提供了问题解决方案,强调了细心检查参数类型和格式的重要性。
摘要由CSDN通过智能技术生成

同一个问题出现过,在遇到还会在再找解决问题,准备开始进行记录。
环境:使用pytorch
我是在定义一个类,不能调用,会报TypeError: init() takes 1 positional argument but 2 were given的问题,可以直接运行,当然中间也有一些(1)没有加self的地方,(2)自定义的类内没有先实例化,而是直接在调用类的函数, (3)定义的类内参数大小不对应等问题。经检查也不是(4)写错特定的名称,如:init(self): 是两个短划线 “_”(定义的类内,self不可以省略),(5)传入参数的类型和大小也和定义的一致,最终发现我的问题是(6)没有先实例化类,将自定义的类实例化后在调用就可以正常运行了。(其实是自己不太了解类和定义的函数的区别,要学的太多了。。。)
我搜到的和遇到常见的问题就是上面的6种之一,重点就是要 对好参数类型和保证格式的问题,细心仔细!
我定义的类和修改如下:

class att( nn.Module)
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值