問題タブ [structural-pattern-matching]

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 に答える
60 参照

python - JSON または JSON 行に対する SQL スタイルのクエリにパターン マッチングを使用する方法

JSONまたはJSON linesの形式のデータから始めて、構造パターン マッチングを使用してそれに対してクエリを実行したいと考えています。

たとえば、 json.load() を実行した後、次のような構造の dict を取得します。

私がやりたいことは、Python 3.10 の構造パターン マッチングを適用して、関連データを抽出することですこれは、次の SQL クエリの場合と同じです。

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

python - 構造パターン マッチングでの偶発的なキャプチャの回避

この例は、パターン マッチングを使用する場合に「落とし穴」として議論されています。

これは、構造パターン マッチングによる偶発的なキャプチャの例です。この予期しない出力が得られます。

これと同じ問題が他の形で発生します。

この例でstrは、括弧が必要str()です。それらがなければ、それは「キャプチャ」し、str組み込み型はxの値に置き換えられます。

これらの問題を回避し、早期に検出するのに役立つ防御的なプログラミング手法はありますか?

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

python - Python の "match" ステートメントを使用して Iterable にパターンが含まれているかどうかをテストする方法はありますか?

これは、新しい Python 3.10 ベータと新しいmatch構文に関係しています。パターンが単純にイテラブルに含まれているかどうかを確認する方法はありますか? 最も明白な解決策は、どちらかの側に 2 つのワイルドカードを単純に配置することですが、SyntaxError反復可能なアンパックから生じるアンパック構文のために a が発生します。

これを行う方法はありますか?注:numbers マッチ ブロックを使用して機能し、少なくともある程度は読み取り可能である限り、例でラッパー クラスなどを使用しても問題ありませんが、私はすでにこれをある程度試しましたが、あまり成功していません。

例: