Python TypeError:main()缺少1个必需的位置参数:';自我';

Python TypeError:main()缺少1个必需的位置参数:';自我';,python,Python,下面是我的代码和错误,我试图理解为什么会出现错误以及如何修复它。我在没有自我的情况下尝试了这个,但又犯了一个错误 TypeError:load_data()接受0个位置参数,但给出了1个。 def主(自): 培训加载程序、验证加载程序、测试加载程序=实用程序3.加载数据(数据) 模型、优化器、标准=效用3.网络结构(结构、放置、隐藏层、学习率、设备) 实用性3.深度学习(模型、优化器、标准、时代、40、培训装载机、设备) 实用程序3.保存检查点(模型、路径、结构、隐藏层、删除、学习率) 打印(

下面是我的代码和错误,我试图理解为什么会出现错误以及如何修复它。我在没有自我的情况下尝试了这个,但又犯了一个错误

TypeError:load_data()接受0个位置参数,但给出了1个。
def主(自):
培训加载程序、验证加载程序、测试加载程序=实用程序3.加载数据(数据)
模型、优化器、标准=效用3.网络结构(结构、放置、隐藏层、学习率、设备)
实用性3.深度学习(模型、优化器、标准、时代、40、培训装载机、设备)
实用程序3.保存检查点(模型、路径、结构、隐藏层、删除、学习率)
打印(“培训结束”)
如果名称=“\uuuuu main\uuuuuuuu”:
main()
TypeError回溯(最近一次调用)
在()
49
50如果名称=“\uuuuu main\uuuuuuuu”:
--->51主要内容()
TypeError:main()缺少1个必需的位置参数:“self”

您的函数
main
接受参数
self
,但在执行过程中,
main()
不会传递任何参数

首先,
self
用于面向对象编程,当您有一个带有属性和方法的类时。但这不是你在这里拥有的。此外,您似乎根本没有在函数中使用
self
,那么为什么要将其作为参数呢

改为这样做:


def main():
培训加载程序、验证加载程序、测试加载程序=实用程序3.加载数据(数据)
模型、优化器、标准=效用3.网络结构(结构、放置、隐藏层、学习率、设备)
实用性3.深度学习(模型、优化器、标准、时代、40、培训装载机、设备)
实用程序3.保存检查点(模型、路径、结构、隐藏层、删除、学习率)
打印(“培训结束”)
如果名称=“\uuuuu main\uuuuuuuu”:
main()

您将
main
定义为有一个参数
self
,但不使用任何参数调用它:
main()
。您提到的第二个错误是
实用程序3.load_data
(我们看不到其定义)显然不接受任何位置参数,但您正在传递一个。您需要将参数传递给它们期望的函数!您是否从类中删除了一个方法,现在尝试将其用作函数?您必须在
main(self)
functionMate中将一个参数传递给
self
。是的,我试着解决这个问题,我想加上“self”会有帮助。因为当我删除它时,我得到了错误,我还没有理解错误的真正含义。TypeError:load_data()接受0个位置参数,但在()49 50中为1提供了TypeError回溯(最近一次调用,如果name_uuu==“uu main”:-->51 main()在main()41 def main():42-->43训练_加载程序、验证_加载程序、测试_加载程序=实用程序3.load_数据(数据)44模型、优化器、标准=实用程序3.网络构造(结构、放置、隐藏层、学习率、设备)45实用程序3.进行深入学习(模型、优化器、标准、年代、40、培训加载程序、设备)类型错误:加载数据()接受0个位置参数,但给出1个位置参数