問題タブ [descriptor]
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 - メソッドの記述子はメタデータを提供しますが、メソッドが配置されているクラスを取得できません
ディスクリプタとデコレータを交互に使用していることをお許しください。ここでそれらのいくつかが間違っている可能性があります。
メソッドについて何かを宣言的に指定するクラスを (たくさん) 書きたいと思います。
その意図は、メソッドの動作を変更することではなく、(0,1,2) がこのメソッドに関連付けられていることを登録することだけです。
これを実現するために、次の記述子を作成しました。必要な 3 つのうち 2 つを提供してくれます。
問題のメソッドが Foo クラスに属していることを method_metadata 内で把握する方法はありますか?
PS - 私は Python 3.2 を使用しており、下位互換性は必要ありません。
maven - maven plugin.xml 記述子を生成できません
<packaging>maven-plugin</packaging>
編集:私のプロジェクトpomにタグがありませんでした。この投稿の文を誤解していて、除外する意味がわかりませんでした ... :
ありがとう、私はすでにそれを理解
<packaging>maven-plugin</packaging>
し、pomファイルに残しました。これが他の人に役立つことを願っています
Maven プラグインをビルドしようとしていますが、plugin.xml ファイルを生成できません。
記述子の目標とフェーズの有無にかかわらず、maven-plugin-plugin のコマンドラインと pom 構成を試しました。その場でやっているのだろう。
おそらく、正しく行われていないのは残りの部分です。私が見つけた唯一の関連トピックは、maven プラグイン記述子が自動的に生成されないのはなぜですか? そしてそれはあまり役に立ちません。
ここにmavenログがあります http://pastebin.com/uA2KFTXN
Java4 アノテーション (@goal と @phase) を持つ 2 つのモジョがあります。Pomに次のタグがあります
java - Eclipseの「ロード記述子」には時間がかかります
最新の JVM 1.7 と Tomcat 7 を使用して、Eclipse (Juno - 最新ビルド) を使用する Java Spring MVC ベースのプロジェクトがあります。Eclipse は非常に高速で、すべてがデフォルト設定に設定されています。すべてがロードされると、それは電光石火の速さであり、快適な変化をもたらします.
ただし、唯一の不満は、プロジェクトを開くと、'Loading descriptor' が開始されることです。これは、私が知る限り、185 行の web.xml ファイルです。読み込みに 5 分かかる場合もあれば、まったく読み込まれない場合もあります。これにより、システムは記述子がロードされるのを待ってから他の処理が行われるため、変更が行われなくなります。これで停止ボタンを押すと、システムはキャンセルが完了するのを「待機」したままになります。唯一の方法は、タスクマネージャーである Java プロセスを強制終了することです。偶然ロードされた場合、システムは正常に動作します (参照用に別のプロジェクトを開かない限り、再び楽しみが始まります)。
記述子をスキップする構成はありますか (たとえば、スキップできる検証と関係がありますか)、または記述子が正しく読み込まれない何らかの理由がありますか?
java - 画像の記述子を抽出するJavaライブラリ
ドミナントカラーのGaborFiltringなどの画像の記述子(色、フォーム、テクスチャ)を検出する事前定義された関数を備えたライブラリを見つけるために多くの調査を行いました..複数のライブラリを見つけましたが、それらはすべて使用されています誰かがjava言語で使用するライブラリを知っているならc++で私は本当にあなたの助けをいただければ幸いです
python - Pythonプロパティに__iadd__を実装する方法
インプレース追加が値の取得、別の値の追加、再割り当てとは異なる方法で処理されるPythonプロパティを作成しようとしています。したがって、x
オブジェクトのプロパティの場合o
、
動作が異なるはずです
人々の期待を混乱させないために、の値はo.x
最終的に同じである必要がありますが、インプレース追加をより効率的にしたいと思います。(実際には、単純な加算よりも操作にかなりの時間がかかります。)
私の最初のアイデアは、クラスで、
しかし、これはAttributeErrorを発生させます。これは、おそらくproperty
実装__slots__
?
次の試みでは、記述子オブジェクトを使用します。
ご覧のとおり、特別な__iadd__
メソッドは呼び出されません。__getattr__
オブジェクトがどういうわけかそれをバイパスしていると推測しますが、これがなぜであるかを理解するのに苦労しています。
これどうやってするの?記述子のポイントを取得していませんか?メタクラスが必要ですか?
python - getattrでの最大再帰深度エラー
私はこのコードを持っています。
行で最大再帰深度エラーが発生していますname = [attr for attr in dir(owner) if getattr(owner,attr) is self][0]
。その行で、現在の記述子インスタンスに使用されている変数の名前を取得したいと思います。誰かが私がここで間違っていることを見ることができますか?
python - Python のインスタンス属性としての記述子
質問に:
記述子をインスタンス属性にできないのはなぜですか?
次のように回答されています。
記述子オブジェクトは、インスタンスではなくクラスに存在する必要があります
__getattribute__
それが実装されている方法だからです。
簡単な例。記述子を考えてみましょう:
各 obj に複数の Prop がある場合を考えてみましょう。値と乗数を識別するために一意の名前を使用する必要があります (ここのように。インスタンスごとの記述子オブジェクトを使用すると、記述子自体に_multiplier
(および) を格納でき、_value
いくつかのこと。
インスタンス記述子属性ごとに実装するには、次のいずれかを行う必要があります。
同様の質問が以前に提起されたことは承知していますが、本当の説明は見つかりませんでした。
- なぜPythonはこのように設計されているのですか?
- 記述子が必要とするが、インスタンスごとに情報を保存するための推奨される方法は何ですか?
python - python __get__ メソッド
リンクから記述子がどのように機能するかの説明を読んでいます: http://users.rcn.com/python/download/Descriptor.htm#properties。
しかし、ここでは、クラスProperty
の__get__
メソッドの下で、メソッドの署名について疑問があります。メソッドのシグネチャは次のとおりです。
def __get__(self, obj, objtype=None):
obj
ここで、が None または実際のオブジェクトになるタイミングと方法を知っています。
しかし、私は理解できませんでした:どのような場合objtype
にNone
? そして、それが実際の例でどのように役立つか。
python - Pythonで属性アクセスを完全にオーバーライドする適切な方法は?
この単純なクラスは、基本的な python オブジェクトの属性アクセスを模倣しようとします。dict
属性とクラスをcls
明示的に格納します。その結果.x
、インスタンスにアクセスすると が返されるdict[x]
か、失敗した場合は が返されますcls.x
。通常のオブジェクトと同じように。
しかし、それはそれほど単純ではありません。明らかな問題の 1 つは、記述子が完全に無視されていることです。cls
プロパティがあると想像してみてください。で定義Instance.some_property = 10
されているようにプロパティにアクセスする必要がありますが、cls
代わりにsome_property
で属性として喜んで設定されますdict
。
cls
次に、 のメソッドを のインスタンスにバインドするという問題がありInstance
、おそらくそれ以上の問題があります。
上記のクラスをできる限り Python オブジェクトに近づけて機能させるには、多くの詳細があるようです。これまで読んだ記述子のドキュメントでは、簡単に言えば、すべてを正しくする方法が明確にされていません。
私が求めているのは、Python の属性アクセスの完全な代替を実装するためのリファレンスです。つまり、上記のクラスですが、正しいです。
eclipse - Eclipse Juno ロード記述子エラー
Eclipse を Galileo から Juno に更新しました。新しいワークスペースを作成し、Java Spring MVC ベースのプロジェクトをインポートしました。それを開くと、「記述子の読み込み」が始まり、エラー メッセージが表示されます。「mta_pfm の記述子の読み込み中に内部エラーが発生しました。」Galileo で開くと、エラーは発生しません。Juno で XML ファイルの検証を無効にしようとしましたが、機能しません。私は今それを修正する方法がわかりません。助けてください。ありがとう