問題タブ [hashable]

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 投票する
2 に答える
502 参照

swift - Swift 3 - コレクション内の構造体

次のコードが機能しないのはなぜですか? そして、それを機能させるには何を変更する必要がありますか?

構造体をSwiftクラスにするとうまくいくことがわかりました。構造体が値型であることと関係がありますか? 最後の行にコンパイラ エラーが表示されます。「'[Person]' は '<>' に変換できません」

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

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

python - Python Enums で変更可能な値が許可されるのはなぜですか?

これは、Python Enums のミュータブルな値が同じオブジェクトである理由の続きです。.

an の値Enumが変更可能な場合 ( lists など)、それらの値はいつでも変更できます。Enumメンバーが値によって取得される場合、特に誰かがうっかりして検索した値を変更した場合、これは問題を引き起こすと思いますEnum

Python の通常のイディオムを考えると、これは問題ないと思います。これは、ユーザーがミュータブルを値として使用できることを意味します開いEnumている可能性のあるワームの缶を理解するためだけです。

ただし、これにより 2 番目の問題が発生します。メンバーを値で検索でき、値が可変である可能性があるためEnum、ハッシュマップ/ 以外の方法で検索を行う必要があります。dictkeydict

値によるルックEnumアップをdict?

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

swift - Swift クロージャーから一意のハッシュを生成することは可能ですか?

クロージャーをラップする次の構造体があるとします。

私が望むのは==、クロージャーがまったく同じである場合、関数が true を返すことです。

次に、この構造体を、そのように宣言されたディクショナリのキーとして使用できます。 var dict = [Task, (Date, RateLimitedClosure)]

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

swift - 単純なタプルを Hashable に準拠させるため、Dictionary Key にすることができます

非常に単純なタプルをキーとして使用したいと思います。

辞書のキーは Hashable である必要があります。私は学びました。

しかし、この単純なタプルを Hashable にする方法を見つけることができず、最高の状態でプロトコルの適合性に苦労しています。

もっと深刻なことに、CGPoint は私の問題を解決してくれるでしょう。この形式にすることもできますが、ハッシュ可能ではありません。

ハッシュ可能になるように CGPoint を拡張することは可能ですか? もしそうなら、どのように?

編集: CGPoint 選択の Int バリアントの画像。

ここに画像の説明を入力

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

python - ハッシュ不可能な型: リスト

私は、ログ ファイルを解析し、IP アドレスのトップ ヒットとその他のいくつかを返すプログラムに取り組んでいます。現在、私は問題を抱えており、現在行っていることに対するこの問題の答えを解釈できません。これは私のコードのすべてです:

今私が問題を抱えているのは次の行です:

プログラム全体を実行したときの出力は次のとおりです。

誰か助けてくれませんか?これはイライラします。