TypeError: twoSum() takes exactly 2 arguments (3 given) ret = Solution().twoSum(param_1, param_2) Line 44 in _driver (Solution.py) _driver() Line 54 in <module> (Solution.py)
时间: 2024-02-04 20:04:13 浏览: 38
这个错误提示是因为你在调用 `twoSum()` 函数时传入了三个参数,但是这个函数只接受两个参数。因此,你需要检查一下传入的参数数量是否正确,然后修改代码以确保只传入两个参数。例如:
```python
ret = Solution().twoSum(param_1, param_2)
```
在这个例子中,很可能是 `param_1` 或 `param_2` 参数传递有误,导致了错误。你可以检查一下这两个参数的值,或者看一下 `twoSum()` 函数的定义来确定应该传入哪些参数。
相关问题
TypeError: __init__() takes exactly 2 arguments (1 given) 怎么解决
这个错误通常是因为你在创建类的实例时,没有按照类的构造函数要求传递足够的参数。
类的构造函数通常被称为`__init__`方法,它的第一个参数是`self`,用于表示类的实例对象。如果你在创建类的实例时,没有传递足够的参数,就会出现这个错误。
要解决这个错误,你需要检查你创建类的实例时,是否传递了足够的参数。如果没有,就需要传递足够的参数。
例如,如果你有一个类如下:
```python
class MyClass:
def __init__(self, arg1, arg2):
self.arg1 = arg1
self.arg2 = arg2
```
你需要传递两个参数`arg1`和`arg2`来创建这个类的实例,如下所示:
```python
obj = MyClass('value1', 'value2')
```
如果你只传递了一个参数,就会出现这个错误:
```python
obj = MyClass('value1')
TypeError: __init__() takes exactly 2 arguments (1 given)
```
你需要传递两个参数来避免这个错误。
TypeError: __cinit__() takes exactly 1 positional argument (2 given)
TypeError: __cinit__() takes exactly 1 positional argument (2 given) 是一个常见的错误类型,它表示在调用一个函数时传入的参数数量不正确。具体来说,这个错误通常发生在使用了类的构造函数(__init__)时。
在Python中,类的构造函数通常用于初始化对象的属性。构造函数的第一个参数通常是self,表示当前对象实例。如果在创建对象时传入了额外的参数,而构造函数只接受一个参数(self),就会出现这个错误。
解决这个错误的方法是检查代码中创建对象的地方,确保传入的参数数量与构造函数定义的参数数量一致。如果需要传入额外的参数,可以在构造函数中添加对应的参数,并在创建对象时传入。