問題タブ [new-style-class]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 古いスタイルと新しいスタイルの python クラスまたはオブジェクトを区別するための単純なユーティリティ関数は何ですか?
古いスタイルと新しいスタイルの python クラスまたはオブジェクトを区別するための単純なユーティリティ関数は何ですか?
以下は正しいですか、完全ですか:
そうでない場合は、解決策を提供できますか。もしそうなら、チェックを行うより良い方法はありますか?
上記を使用して、問題はありませんでしたが、パラメーターとして提供されたすべてのオブジェクトで機能するという 100% の信頼はありません。
python - Python2.7の古いスタイルと新しいスタイルのクラス
重複の可能性:
Pythonの古いスタイルと新しいスタイルのクラス
Python 2.7の新しいスタイルと古いスタイルのクラスの現状はどうなっていますか?
私はPythonを頻繁に使用しませんが、この問題を漠然と覚えています。ドキュメントにはこの問題がまったく記載されていないようです:Pythonチュートリアル:クラス。私はまだこれについて心配する必要がありますか?一般的に、クラスを次のように宣言する必要がありますか?
また?
python - Python の property.getter の目的は何ですか?
Python は 1 つの正しい方法があるように努めているため、property.getter の目的は何なのか疑問に思っています。この例では、WhyMe が getter を定義していますが、Other はそうではありません。
そしてそれらを使用して:
私はプロパティに慣れていません。ゲッターを作成することに利点があるのか 、それとも対称性のためにそこに置かれたのか疑問に思っていますか?
python - __getattribute__をオーバーライドして値をプロキシするのはなぜですか?
なぜこれが起こるのですか?
クラスは、ラップしようとしても、boolのインスタンスではありません。
python - オブジェクトが新しいスタイルのユーザー定義クラスのインスタンスであるかどうかを確認するにはどうすればよいですか?
コード:
出力:
オブジェクトが新しいスタイルのクラスのユーザー定義クラスのインスタンスであるかどうかを確認する正しい方法は何ですか?
UPD:
オブジェクトのタイプがユーザー定義であるかどうかをチェックするかどうかをさらに強調したいと思います。ドキュメントによると:
types.InstanceType ユーザー定義クラス
のインスタンスのタイプ。
UPD2:
了解しました。「正しい」方法ではありません。
UPD3:
set
また、モジュール内にのタイプがないことに注意してくださいtypes
python - 推奨される Python 3.x クラス定義構文は何ですか?
Python 3.x で python のオブジェクトを継承することは必要ですか、または有用ですか? およびPython クラスはオブジェクトを継承することを明確にすると、Python 3 でクラスを定義するときに継承する必要がなくなりました。object
リンクされた質問のいずれかによって直接対処されていないこれの結果として、新しいPython 3コードを作成するときに、どちらのスタイルを優先する必要がありますか? よりクリーンなクラス定義のために基本クラスを削除する方が良いですobject
か、それとも (潜在的に) Python 2 への将来の移植を容易にするためにそのままにしておく方が良いですか?
python - 組み込み操作のための新しいスタイルのクラス属性検索
クラシック クラスと新しいスタイル クラスの次の違いを考慮してください。
このプロパティの説明は、新しいスタイル オブジェクトの属性検索が、組み込み操作のインスタンスではなくクラスで開始されるということです。しかし、クラスオブジェクトにも __getattr__ が定義されており、なぜここで欠落している属性 __getitem__ に対して呼び出されないのですか?