0

ディクショナリを作成している間、ディクショナリ値になる多数の同等のフリーズ セットがあります。だから、私は同等のフリーズセットを共有したいと思います。

考えられる解決策の 1 つを次に示します。

result = dict()
helper = dict()
for key, value in generate_data():  # generate_data will return a lot of equal frozensets as values
    result[key] = helper.setdefault(value, value)

このソリューションディクショナリでは、電流がans に保存される前に既に見られてhelperいるかどうかを調べるために使用され、そうでない場合はそこに保存します。すべての大変な作業は によって行われます。frozensetfrozentsethelpersetdefault

この解決策について私が気に入らないのは、すぐに理解するのが非常に難しいことです (の重要な使用法setdefault)

それで、私の質問は次のとおり
です。このソリューションと同じくらい簡潔(またはほぼ簡潔)で、より読みやすく理解しやすい方法で記述できますか?

4

2 に答える 2

0
if value not in helper:
    helper[value] = value
result[key] = helper[value]
于 2013-10-02T18:33:20.180 に答える