从错误(缺少参数)到错误(使用类,而不是实例)的快捷方式

时间:2019-05-15 19:12:23

标签: python-3.5

对于我来说,在相当长的代码中,我忘记了括号 创建类的实例时的类,例如

index = UnicodeIndex

这导致了类似的奇怪错误

TypeError: find_description() missing 1 required positional argument: 'query'

    index.find_description(查询) 其中find_description是UnicodeIndex类的方法

花了我几个小时才能找到问题的原因(以下示例) 说明):

class Noinit:
    def __init__(self, chars):
        self.chars = chars

    def find_chars(self, char):
        return char in self.chars

>>> n=Noinit
>>> n.find_chars('c')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: find_chars() missing 1 required positional argument: 'char'

请帮助我了解原因之间的联系(使用 类,而不是类实例)和结果, 调用方法的“缺少位置参数”错误。

我有一个非常模糊的想法,因为没有实例化该类,所以在调用方法并将提供的参数用作一个从而占用所有位置参数的情况下,该类不应为self

0 个答案:

没有答案