为什么我在python中收到对象类型int的TypeError?

时间:2017-11-11 03:55:23

标签: python testing arguments typeerror

所以我有一个项目,我试图测试它是否按预期工作。每次我去测试它都会说有一个TypeError或它说我没有采取足够的参数。

这是我正在使用的测试用例的一个例子:

pirates.process( 0, [( 'Q', 10000 ), ( 'S', 9000), ])

我的定义如下:

__init__(people_after_me, items)

如何解决此问题?

Traceback (most recent call last):
  File "F:\lib\unittest\case.py", line 59, in testPartExecutor
   yield
File "F:\lib\unittest\case.py", line 605, in run
 testMethod()
File "C:\Users\Travis Jones\PycharmProjects\pirates\piratesTest.py", line 
12, in test00
   ( 'S',  9000 ),
TypeError: __init__() takes 2 positional arguments but 3 were given

2 个答案:

答案 0 :(得分:1)

如果你的NSLocationUsageDescription是在一个类中定义的,那么它就成了一个方法,它应该带有类实例的self参数。

尝试在类定义中定义__init__,如此。

__init__

答案 1 :(得分:0)

我认为你这里有拼写错误

pirates.process( 0, [( 'Q', 10000 ), ( 'S', 9000), ])

你应该关闭列表并删除尾随的逗号

pirates.process( 0, [( 'Q', 10000 ), ( 'S', 9000 )])