Python TypeError缺少参数?

Python TypeError缺少参数?,python,python-2.7,python-3.x,Python,Python 2.7,Python 3.x,我一直坐在这里运行一些我必须为学校创建的代码(这是一个搜索系统),我一直试图修复这个错误很久了。非常感谢您的帮助 代码:(我知道缩进是错误的,只是为了网站的格式) 错误: Traceback (most recent call last): File "/x/x/x/x.py", line 27, in <module> running() File "/x/x/x/x.py", line 19, in running item = Main(input("i

我一直坐在这里运行一些我必须为学校创建的代码(这是一个搜索系统),我一直试图修复这个错误很久了。非常感谢您的帮助

代码:(我知道缩进是错误的,只是为了网站的格式)

错误:

Traceback (most recent call last):
  File "/x/x/x/x.py", line 27, in <module>
    running()
  File "/x/x/x/x.py", line 19, in running
    item = Main(input("item to add?     "))
TypeError: __init__() missing 1 required positional argument: 'term'
回溯(最近一次呼叫最后一次):
文件“/x/x/x/x.py”,第27行,在
运行()
文件“/x/x/x/x.py”,第19行,正在运行
项目=主(输入(“要添加的项目?”)
TypeError:\uuuu init\uuuu()缺少1个必需的位置参数:“term”

类的构造函数(即
\uuuu init\uuu
方法)需要两个参数。这意味着您不能只执行
Main(输入(“要添加的项”)
,它传递一个参数(返回字符串的
input()
方法的结果)


您需要
Main(输入(“要添加的项目?”),其他内容)
,即两个参数。

如果您只想在需要时填写术语,可以将其传递给init

def __init__(self, item, term=''):

调用
Main()
时,您没有传递
term
参数。您有:
\uuuu init\uuuu(self、item、term):
。您正在使用
Main(输入(“要添加的项目?”)
初始化,这是项目的1个字符串。您缺少最后一行所指示的
术语
参数。因此,我可以直接用“”填充此空间吗?或者这被认为是糟糕的语法?您可以。如果你不需要它,最好从中删除它,这样它就不存在了。那么我需要在这里删除什么呢?只需从init方法中删除term?是的,但是您还需要删除
self.term=term
。您还必须修复
add
search
方法的内容。您可能希望访问该方法的参数。如果是,不要使用
self.item
self.term
,而只使用
item
term
(在这两种方法中)。
def __init__(self, item, term=''):