1. ホーム
  2. python

[解決済み] Pythonで単一メンバー集合からメンバーを抽出するには?

2023-03-27 05:45:08

質問

最近、あるセットに 1 つの要素しか含まれていない場合、その要素で何かを行いたいというシナリオに遭遇しました。 要素を取得するために、私はこのアプローチに落ち着きました。

element = list(myset)[0]

しかし、これでは不要なリストができてしまい、あまり満足のいくものではありません。 また、反復で行うこともできますが、要素が1つしかないため、反復も不自然に思えます。 何か単純なことを見逃しているのでしょうか?

どのように解決するのですか?

タプルアンパッキングは動作します。

(element,) = myset

(ちなみに、python-dev は myset.get() を追加して、セットから任意の要素を返せるようにすることを検討しましたが、却下されました。 ディスカッションはこちら Guido van Rossum さんの回答 1 2 .)

任意の要素を取得するための個人的なお気に入りは、(未知の数を持っている場合ですが、1つだけ持っている場合にも機能します)。

element = next(iter(myset)) ¹

1 : Python 2.5以前では、Python2.5では iter(myset).next()