SquishAutomationToolにPython言語を使用しています。このツールは、いくつかのカスタムオブジェクトと関数でPythonを拡張します。これは彼らがマニュアルで言っていることです:
SquishのPython固有の拡張モジュールは、次のステートメントに相当するものを内部的に実行することによって自動的にロードされます。
Python import test import testData import object import objectMap import squishinfo from squish import *
つまり、独自のスタンドアロンモジュールを開発しているのでない限り、それらを自分でインポートする必要はありません。
そうすることで、 (これに対して)自動的に再定義object
されるため、(のような)新しいスタイルのクラスを実行しようとするとエラーが発生します。class NewClass(object):
TypeError:メタクラスベースを呼び出すときにエラーが発生しました。
module.__init__()
最大で2つの引数を取ります(3つ与えられます)
だから私はobject
取り戻そうとしています。メタクラスに関するすばらしい記事を読んだ後object
、次のコードで取得しようとしています。
class OrigObject:
__metaclass__ = type
class NewClass(OrigObject):
pass
object
私の質問は、元のクラスから継承するのと同じですか?
更新:Python 2.4の使用に制限されています(それが重要な場合)
ありがとう!