Python 类绑定(bind)不起作用,引发错误

标签 python class binding

所以我一直在观看有关 Python 类的视频教程,代码如下所示:

class MyPythonClass():

    def _init_(self, msg):
        self.msg = msg
        self.print_msg()

    def print_msg(self):
        print(self.msg)


inst = MyPythonClass('hello')

这几乎是逐字复制的,并且代码在视频中有效。但是当在 Eclipse 工作区中按照上面的方式使用它时,我收到以下错误:

TypeError: object() takes no parameters

并且,当将其与类方法 print_msg('hello') 一起使用时,我收到以下错误:

TypeError: say_hello() takes 1 positional argument but 2 were given

我只传递了 1 个字符串参数,而不是 2 个参数,对吧..

顺便说一句,我认为本教程使用的是 Python 3.1,而我使用的是 Python 3.6。

为什么我会收到这些错误?

最佳答案

__init__读作“dunder init”,您将永远不会忘记特殊方法名称以两个下划线开头和结尾!

关于Python 类绑定(bind)不起作用,引发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48238599/

相关文章:

c++ - 错误 : passing 'const T' as 'this' argument of 'bool T::operator<(T)' discards qualifiers

cocoa 绑定(bind)没有按预期工作?尝试将 NSTextField 的启用绑定(bind)到复选框状态

python - 如何捕获 ThreadPoolExecutor() 中线程死亡的情况?

python - 迭代字典的键并对其作为数据帧的值执行切片

Swift 3 类/属性引用语法 - Couchbase Lite

validation - WinRT XAML 工具包 TextBoxValidationExtension 未验证 ViewModel 中的初始化绑定(bind)

javascript - SAPUI5 通过属性名称从 XML 模型进行绑定(bind)聚合

python - 如何在 Django Admin 中仅折叠一个字段?

python - sklearn 库中 .score() 和 .predict 的区别?

class - Dart flutter : The default value of an optional parameter must be constant when setting a default value to class constructor