タグ付けされた質問 「introspection」

実行時にオブジェクトのタイプを判別するための一部のオブジェクト指向プログラミング言語の機能。

9
インスタンスのクラス名を取得していますか?
これを行う関数がインスタンスのクラスが派生した基本クラスである場合、Pythonでオブジェクトのインスタンスを作成したクラスの名前を見つけるにはどうすればよいですか? おそらく、inspectモジュールが私を助けてくれたかもしれないと思っていましたが、それは私が欲しいものを与えていないようです。__class__メンバーを解析する前に、この情報を取得する方法がわかりません。



19
その関数内から(トレースバックを使用せずに)関数名を決定する
Pythonでは、tracebackモジュールを使用せずに、その関数内から関数の名前を判別する方法はありますか? 関数barを持つモジュールfooがあるとします。を実行するときにfoo.bar()、バーがバーの名前を知る方法はありますか?またはもっと良いのは、foo.bar名前ですか? #foo.py def bar(): print "my name is", __myname__ # <== how do I calculate this at runtime?

17
Pythonオブジェクトが持つメソッドを見つける
任意の種類のPythonオブジェクトが与えられた場合、このオブジェクトが持つすべてのメソッドのリストを取得する簡単な方法はありますか? または、 これが不可能である場合、メソッドが呼び出されたときにエラーが発生したかどうかを単にチェックする以外に、特定のメソッドがあるかどうかをチェックする少なくとも簡単な方法はありますか?

22
Pythonオブジェクトの内部をどのように調べますか?
Pythonを使用したさまざまなプロジェクト(Django Web開発およびPanda3Dゲーム開発を含む)でコーディングを始めています。 何が起こっているのかを理解するのを助けるために、基本的にはPythonオブジェクトの内部を「見て」、それらがどのように動くかを確認したいと思います-メソッドやプロパティのように。 だから私はPythonオブジェクトを持っているとしましょう、その内容を印刷するには何が必要ですか?それは可能ですか?

15
メソッドパラメータ名を取得する方法
Python関数を考える: def a_method(arg1, arg2): pass 引数の数と名前を抽出するにはどうすればよいですか。つまり、への参照があることを前提としてfunc、func.[something]を返し("arg1", "arg2")ます。 これの使用シナリオは、デコレータがあり、メソッドの引数を実際の関数にキーとして表示されるのと同じ順序で使用したい場合です。つまり、デコレータは、"a,b"呼び出したときに印刷されたように見えますa_method("a", "b")か?

5
SwiftでのisKindOfClassの使用
私はSwiftのlangを少し拾おうとしていますが、次のObjective-CをSwiftに変換する方法を考えています。 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { [super touchesBegan:touches withEvent:event]; UITouch *touch = [touches anyObject]; if ([touch.view isKindOfClass: UIPickerView.class]) { //your touch was in a uipickerview ... do whatever you have to do } } より具体的にisKindOfClassは、新しい構文での使用方法を知る必要があります。 override func touchesBegan(touches: NSSet, withEvent event: UIEvent) { ??? if ??? { // your …

8
呼び出されたメソッドで呼び出し元のメソッド名を取得する方法は?
Python:呼び出されたメソッドで呼び出し元のメソッド名を取得する方法は? 私は2つの方法があると仮定します: def method1(self): ... a = A.method2() def method2(self): ... method1を変更したくない場合、method2で呼び出し元の名前(この例では、名前はmethod1)を取得する方法を教えてください。

3
help()の出力でのスラッシュの意味は何ですか?
閉じ括弧の前/のPython 3.4のhelp出力の意味は何rangeですか? >>> help(range) Help on class range in module builtins: class range(object) | range(stop) -> range object | range(start, stop[, step]) -> range object | | Return a virtual sequence of numbers from start to stop by step. | | Methods defined here: | | __contains__(self, key, /) | …


14
Javaリフレクションを使用して継承された属性の名前/値を取得する
「ParentObj」から拡張されたJavaオブジェクト「ChildObj」を持っています。ここで、Javaリフレクションメカニズムを使用して、継承された属性も含めて、ChildObjのすべての属性名と値を取得できる場合はどうでしょうか。 Class.getFieldsはパブリック属性の配列を提供し、Class.getDeclaredFieldsはすべてのフィールドの配列を提供しますが、継承されたフィールドリストを含むフィールドはありません。 継承された属性を取得する方法もありますか?

8
名前がわからない場合、JavaScriptオブジェクトのプロパティにどのようにアクセスしますか?
次のようなJavaScriptオブジェクトがあるとします。 var data = { foo: 'bar', baz: 'quux' }; プロパティ名でプロパティにアクセスできます。 var foo = data.foo; var baz = data["baz"]; しかし、プロパティの名前がわからない場合、これらの値を取得することは可能ですか?これらのプロパティの無秩序な性質は、それらを区別することを不可能にしますか? 私の場合、関数が一連の名前と値のペアを受け入れる必要があるが、プロパティの名前が変更される可能性がある状況について具体的に考えています。 これまでのところ、これを行う方法についての私の考えは、データと共にプロパティの名前を関数に渡すことですが、これはハックのように感じます。可能であれば、これを内省して行いたいと思います。

7
Swiftクラスのイントロスペクションとジェネリック
classジェネリックスを使用してインスタンスベースの型を動的に作成しようとしていますが、クラスのイントロスペクションで問題が発生しています。 ここに質問があります: Obj-Cに相当するSwiftはありself.classますか? AnyClassからの結果を使用してクラスをインスタンス化する方法はありNSClassFromStringますか? AnyClassジェネリックパラメーターから厳密に情報を取得または入力する方法はありますTか?(C#のtypeof(T)構文と同様)

10
Djangoでモデルのフィールドを取得する
Djangoモデルを前提として、そのすべてのフィールドをリストしようとしています。_metaモデル属性を使用してこれを行う例をいくつか見ましたが、メタの前にある下線は、_meta属性がプライベート属性であり、直接アクセスしてはならないことを示していませんか?...たとえば、_metaのレイアウトが将来変更され、安定したAPIにならない可能性があるためですか? _metaはこのルールの例外ですか?それは安定していてすぐに使用できますか、それともアクセスするのは悪い習慣と考えられていますか?または、_meta属性を使用せずにモデルのフィールドをイントロスペクトする関数または他の方法がありますか?以下は、_meta属性を使用してこれを行う方法を示すいくつかのリンクのリストです アドバイスは大歓迎です。 djangoオブジェクトの取得/設定フィールド http://www.djangofoo.com/80/get-list-model-fields djangoモデルフィールドをイントロスペクトするにはどうすればよいですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.