0
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

takes 0 positional arguments but 1 was given

原因

pythonはクラスメソッドの引数1つ目に必ず self を取らなければならない。というルールがある。

クラス外から任意のクラスメソッドを呼び出す場合は暗黙的に引数 self が渡される。
そのため、受け側で self を第1引数に取るように作っていない場合、こういうエラーになる。

class Sample:
  def test():
    print('x')

Sample().test()

>>実行結果
TypeError: create_dtl_list() takes 0 positional arguments but 1 was given

呼び出し側は引数を渡していないのに、渡したことになっている。(暗黙的にselfを渡している。)

対処法

クラスメソッド定義時には必ず、self を第1引数に入れるようにする。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
0
Help us understand the problem. What are the problem?