問題タブ [augmented-assignment]
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三項条件
Martijn Pieters による回答。ありがとうございました。
それは、ステートメント対表現だからです。また、 .join() は変更されない (純粋な関数である) ため、変数に割り当てる必要があります。
質問:
この奇妙さの理由は何ですか?
ゴール:
この次の方法が機能します。
ただし、以下は機能しません。
また
結果は、Python2 と Python3 の両方で同じです。
python - 1 行で複数の変数に += を使用できますか?
コードを短くしている間、いくつかの変数宣言を 1 行に削減していました。
しかし、このコードに同じことをしようとしたとき -
これはエラーをスローします
関連する Python ドキュメントを読みましたが、この特定のコードを短縮する方法がまだ見つかりません。
pycharm - Pycharm未解決の属性参照警告
次のコードを検討してください。
上記のコードを指定すると、PyCharm は次の警告を返します。Unresolved attribute reference 'view' for class 'int'
行 4 を次のように 2 行に分割すると
、同じ警告が表示されます。次の場合のみ、警告はスローされません。
PyCharmが最初の 2 つのバージョンbins
で型として扱うのはなぜint
ですか? また、拡張代入がこの動作を変更する方法と理由は?
Yosemite で PyCharm 4.5.1 Community Edition を実行しています。
python - 関数パラメータは参照?
しかし
理由がわかりません、誰か説明してもらえませんか?それらの主な違いは何ですか?
python - 異なる演算子を使用した Python 1 行の if-else
Python で 1 行の if ステートメントと for ステートメントをいじっていたところ、次の問題に遭遇しました。
私は次のようなものを作ることができます:
しかし、次のように = と += を同じコンテキストで使用したい:
これを1行で実装するにはどうすればよいですか?
python - `self[key] += value` のマジックメソッド?
シーケンス タイプ__setitem__
への割り当てには、Python のマジック メソッドがあります。コンテナー レベルでの拡張代入のための魔法の方法はありますか? この操作は、item-type の拡張された割り当てにうまく分割されているように見えます。それは論理的です。しかし、他のほとんどすべてのものには魔法のメソッドがあります。シーケンス型のこれらの演算子には一連のメソッドが必要だと思いました。私はそれを逃しましたか?=
+=
アプリケーションは一種のデータベースです。__getitem__
SELECT と__setitem__
INSERTを使用して実装することを考えてください。__additem__
UPDATEにはetc.のようなものがあるはずですよね?
SELECT は次のとおりです。
挿入は次のとおりです。
UPDATE の実装方法 SELECT と INSERT に分解せずに:
それでは、分割された手順とは異なる方法で拡張代入を実装する方法はありますか? すべての動作を Item クラスに入れずに?
上記のコードをコピーして Python インタープリターに貼り付けるか、次の Python フィドルで試すことができます: http://pythonfiddle.com/add-item-for-sequence/
関連する質問は、の逆コンパイルを示していますself[key] += value
python - 読み取り専用プロパティを変更可能にするにはどうすればよいですか?
私は 2 つのクラスを持っています。1 つは「インプレース演算子」オーバーライド (たとえば+=
) を持ち、もう 1 つは を介して最初のインスタンスを公開します@property
。(注:これは、実際のコードから問題を再現する最小限のものまで大幅に簡略化されています。)
ここで、公開されたプロパティでその演算子を使用しようとすると:
プロパティを on に設定しようとしているので、これは予想されることowner
です。 プロパティを新しいオブジェクトに設定するのを防ぎながら、その背後にあるオブジェクトを (その場で)変更できるようにする方法はありますか、それとも言語の癖ですか?
(この質問も参照してください。ただし、最終的には Python 3 で動作するようにするため、できれば古いスタイルのクラスに戻さずに、別の方法で行こうとしています。)
それまでの間、同じことを行う方法でこれを回避しました。
python - このコードは Python 2.7 でスレッドセーフですか?
Locking でアトミック カウンターを使用する必要がありますか、それともこれを使用できますか?
python - 凍結セットによる拡張代入
フローズンセットで拡張代入を試したところ、驚くべき結果が得られました。
こんなはずじゃないですよね?凍結セットは不変ではありませんか?