これら2つのクラス宣言の違いは何ですか?「オブジェクト」は何をしますか?
class className(object): pass class className: pass
次のコードを実行すると、なぜこのエラーが発生するのですか:「引数を取りません(1つ指定)」
class Hobbs(): def represent(): print "Hobbs represent!" represent = classmethod(represent) Hobbs.represent()
関数に引数を渡さなくても、「Foo.class_foo()」でエラーが発生しないのはなぜですか。
class Foo(object): @staticmethod def static_foo(): print "static method" @classmethod def class_foo(cls): print "Class method. Automatically passed the class: %s" % cls Foo.static_foo() Foo.class_foo()
以下のコードを実行すると、なぜこのエラーが発生するのですか?
class Foo(object): def static_foo(): print "static method" static_foo = staticmethod(static_foo) def class_foo(cls): print "Class method. Automatically passed the class: %s" % cls class_foo = classmethod(class_foo) Foo.static_foo() Foo.class_foo()
「TypeError:バインドされていないメソッドstatic_foo()は、最初の引数としてFooインスタンスを使用して呼び出す必要があります(代わりに何も取得しません)」