ホームページ > バックエンド開発 > Python チュートリアル > Python はネイティブ順序付きセットを提供しますか? どうすればそれをエミュレートできますか?

Python はネイティブ順序付きセットを提供しますか? どうすればそれをエミュレートできますか?

Barbara Streisand
リリース: 2025-01-05 11:04:40
オリジナル
125 人が閲覧しました

Does Python Offer a Native Ordered Set, and How Can One Be Emulated?

Python での順序付きセットの探索

Python には順序付き辞書が用意されていますが、順序付きセットは提供されますか?このクエリを詳しく調べて、Python で利用できる潜在的なソリューションを明らかにしましょう。

順序付きセットの不在

順序付き辞書とは異なり、Python は順序付きセットをネイティブにサポートしません。ただし、順序付きセットの導入は、重複を排除しながら要素の順序を維持するのに有益な機能となります。

辞書を使用した順序付きセットのエミュレーション

Python 3.7 以降では、単純なdict クラスのメソッド fromkeys() を使用することで、辞書を順序付きセットとして利用できます。このメソッドはキーのみを受け取り (値を None に設定)、オーダード セット機能を効果的にエミュレートします。

使用例

使用法を紹介するために、キーワードのリストを検討してください: [ 'foo'、'bar'、'bar'、'foo'、'baz'、'foo']。順序を維持しながら重複を除外するには、単に fromkeys() メソッドを使用して key() を取得します。

>>> keywords = ['foo', 'bar', 'bar', 'foo', 'baz', 'foo']

>>> list(dict.fromkeys(keywords))
['foo', 'bar', 'baz']
ログイン後にコピー

古い Python バージョンの代替

古いバージョンの場合Python バージョンでは、collections.OrderedDict クラスは順序付きセットとして機能します。これは、辞書を使用して順序付きセットをエミュレートするのと同様の機能を提供します。

結論として、Python はネイティブの順序付きセットを提供しませんが、辞書とコレクションを賢く使用することで、同じタスクを効率的に実行でき、開発者が次の処理を行うことができます。 Python コード内の順序付きセット。

以上がPython はネイティブ順序付きセットを提供しますか? どうすればそれをエミュレートできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート