問題タブ [setattr]

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.

0 投票する
1 に答える
4685 参照

python - python spyder editor autocompletion and inspection of modified classes with setattr

after spending hours in googling, I learned a lot, but did not find any close topic to the following:

I am currently programming on dynamically created classes via a factory method. The reason is, that the method names should be populated according to a separate yaml-file. It comes down to this problem:

This code works. However, if you have this code in the editor of sypder (aka. Spider IDE, spyderlib), the autocomplete will not show my_function_name in its context box. Neither is it possible to inspect it via Ctrl+I for easy retrieval of the docstring-help.

The same problem arises, if a class is created with type(classname, (), clsdict). In that case, one only finds mro inside the autocomplete-context-menu.

Also I found, that it is not a problem of the closure pattern above. You can do

In such case, the my_function_name shows correctly up, but it is not what I aimed for.

Would be glad to here any suggestions to accomplish dynamic creation of classes with dynamic method names, which are correctly handled in spyder's autocompletion within the editor window.

0 投票する
1 に答える
295 参照

python - 他の画面でボタンを押してkivy NumericPropertyオブジェクトの属性を変更する方法

このアプリには、プレイヤーのスコア (GameScreen_player1_score) を表示する NumericProperty オブジェクトを持つ GameScreen があります。別の ClueScreen (kivy Screen Manager を使用) には、押されたときに GameScreen 上のプレーヤーのスコアを変更する ClueAnswerButton1 があります。ユーザーが ClueScreen で正しい ClueAnswerButton1 を押したときに、GameScreen でプレイヤーのスコアのスコア属性を変更するにはどうすればよいでしょうか?

GameScreen からプルする ClueScreen に player1_score 変数を作成しようとしましたが、エラーが発生しました。

main.py コードは次のとおりです。

bingo.kv コードはこちら:

0 投票する
0 に答える
24 参照

python - setattr(x, y, lambda: ...) での奇妙な動作

以下のコードを実行すると、次の出力が得られます。

この出力は、以下でマークした 2 行によって生成されます。値は(私が見る限り)同一である必要があり、両方とも最初の値を持つ必要があります。値が 2 番目の値に変更されている場所がわかりません。これは、exercism.io サイトのエクササイズです。私は自分の「娯楽」のためにやっています。しかし、これは私を困惑させました。どんな援助も大歓迎です。

0 投票する
2 に答える
5981 参照

python - Pythonは2要素リストのリストからオブジェクトのリストを作成します

2要素リストのリストのリストがあります。例:

そして、次のように、2 つの要素のリストから属性を持つオブジェクトのリストを作成したいと考えています。

私は多くの方法を試しましたが、どのようにオブジェクトを作成し、属性a = object()を介して設定してobject.__setattr__もうまくいかなかったようです。

0 投票する
1 に答える
190 参照

maya - Maya setAttr ed

申し訳ありませんが、質問がばかげているか、間違った方法で質問している可能性があります。しかし、私は Maya をまったく初めて使用します。したがって、ここで何らかの助けが得られることを願っています。どうもありがとう!問題は次のとおりです。.ma ファイルがあり、次のようなものがあります。

setAttr ".ed[6474:6639]" 8053 8052 1 8053 8052 0 ...

  1. [6474:6639] とはどういう意味ですか? エッジ 6575 から 6639 までのエッジ シーケンシャル番号ですか?
  2. 8053 8052 8053 8052 は 8053 番目のポイントなどを意味しますか?
  3. 1と0の意味は?

ありがとうございました!!

0 投票する
1 に答える
49 参照

python - Python でクラスに属性が追加されたときにメソッドを実行する

Fighterたとえば、属性の有無にかかわらず、クラスをインスタンス化したいと思いますweapon_size。しかし、属性weapon_sizeが設定されている場合 (インスタンス化時または後で)、別の属性を追加するメソッドを実行したいと思いますdamage(おそらく他の計算を行います)。以下のようにsetattr関数を オーバーロードすることでこれを実行しようとしています。

私の質問: これは正しい [そして賢明な] 方法ですか?

0 投票する
1 に答える
757 参照

python - 組み込みの setattr をインデックス スライスと同時に使用する

私が書いているクラスでは、numpy 配列を格納する変数名属性を使用する必要があります。これらの配列のスライスに値を割り当てたいと思います。属性名を変更できるように、setattr を使用しています。スライスに値を割り当てる私の試みは次のとおりです。

上記の setattr の使用のどちらも、dx がエントリ [8,8,8,0,0] を持つ 5 要素の numpy 配列になるという、私が望む動作を生成しません。setattr でこれを行うことは可能ですか?

0 投票する
2 に答える
372 参照

python - setattr() を使用して文字列を変数に変換する

入力方程式と入力変数を使用して合計を取る sigsum() 関数を作成しています。これが私がこれまでに持っているものです:

関数の使用法:

私の現在の問題は、「eqn」と「index」を関数のローカル名前空間内に存在する変数に変換することです。exec を使用するのは得策ではなく、おそらく setattr() が機能する可能性があると聞いたことがあります。誰でも私を助けることができますか?ありがとう。

0 投票する
1 に答える
263 参照

python - python __setattr__ 属性の問題

postgresql db で動作するように設計されたクラスがあります。

そして、私は__setattr__オーバーロードしました:

そして、データベースからコンテンツをロードするために接続するために使用されるメソッド:

これで、初期化と値__setattr__しかできません。私のデータベースにはロードされていない 2 つのフィールドがまだあります。変数がまだ初期化されておらず、python が load メソッドを呼び出してクエリを送信できないため、それらを使用して初期化できません。__id__table__setattr____table__id

おそらく、私は自分の決定に間違ったロジックを入れており、db からの値はそのように開始されるべきではありません。