1. ホーム
  2. python

[解決済み] Pythonのクラス定義構文

2022-08-29 12:39:19

質問

の違いは何ですか?

class A:
    ...

class A():
    ...

今気づいたのですが、私のクラスのいくつかは前者として定義されていて、問題なく動作しています。空白の括弧は何か違いがあるのでしょうか?

どのように解決するのですか?

後者は古いバージョンのPythonでのシンタックスエラーです。Python 2.x では object から派生させるべきですが、いくつかの便利な機能は 新スタイルのクラス (から派生した)。 object からの導出は Python 3.x ではオプションで、新スタイルのクラスがデフォルトだからです)。