簡體   English   中英

為什么我在python中收到對象類型int的TypeError?

[英]Why am I receiving a TypeError for an object type int in python?

所以我有一個項目,我試圖測試它是否按預期工作。 每次我去測試它都會說有一個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

如果你的__init__是在一個類中定義的,那么它就成了一個方法,它應該帶有類實例的self參數。

嘗試在類定義中定義__init__ ,如此。

    def __init__(self, people_after_me, items):

我覺得你這里有拼寫錯誤

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

你應該關閉列表並刪除尾隨的逗號

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM