Python 2 で高度なデータ構造操作にコレクション モジュールを使用する方法。xx
はじめに:
Python 標準ライブラリでは、コレクション モジュールは、さまざまな操作を簡単に実行できるいくつかの高度なデータ構造を提供します。 。この記事では、主にコレクション モジュールによって提供されるいくつかのデータ構造を紹介し、関連するコード例を示します。
1. Counter
Counter は、反復可能なオブジェクト内の各要素の出現数をカウントするために使用できる、シンプルで強力なカウンター ツールです。
サンプル コード:
from collections import Counter # 统计一个列表中每个元素的出现次数 lst = [1, 1, 2, 3, 4, 4, 4, 5, 6, 6, 7] counter = Counter(lst) print(counter) # 输出结果 # Counter({4: 3, 1: 2, 6: 2, 2: 1, 3: 1, 5: 1, 7: 1}) # 统计一个字符串中每个字符的出现次数 s = "Hello, World!" counter = Counter(s) print(counter) # 输出结果 # Counter({'l': 3, 'o': 2, 'H': 1, 'e': 1, ',': 1, ' ': 1, 'W': 1, 'r': 1, 'd': 1, '!': 1}) # 获取出现次数最多的前3个元素及其次数 print(counter.most_common(3)) # 输出结果 # [('l', 3), ('o', 2), ('H', 1)]
2.defaultdict
defaultdict は、組み込み辞書型のサブクラスで、未知の辞書を取得できるメソッド __missing__() をオーバーライドします。キーの値を指定すると、デフォルト値が返されます。
サンプルコード:
from collections import defaultdict # 声明一个defaultdict,键的默认值设为0 d = defaultdict(int) print(d[1]) # 输出结果 # 0 # 声明一个defaultdict,键的默认值设为[] d = defaultdict(list) print(d[1]) # 输出结果 # [] # 声明一个defaultdict,键的默认值设为None d = defaultdict(lambda: None) print(d[1]) # 输出结果 # None
3. OrderedDict
OrderedDict は、要素が挿入される順序を記憶する順序付き辞書です。
サンプル コード:
from collections import OrderedDict # 声明一个OrderedDict d = OrderedDict() # 添加键值对 d[1] = 'a' d[2] = 'b' d[3] = 'c' # 遍历字典 for k, v in d.items(): print(k, v) # 输出结果 # 1 a # 2 b # 3 c
4. deque
deque は両端キューであり、スレッドセーフであり、キューとスタックを効率的に操作できます。
サンプル コード:
from collections import deque # 创建一个双端队列 d = deque() # 添加元素 d.append(1) d.append(2) d.append(3) # 输出队列元素 print(d) # 输出结果 # deque([1, 2, 3]) # 弹出元素 print(d.popleft()) print(d.pop()) # 输出结果 # 1 # 3
概要:
この記事では、コレクション モジュールが提供するいくつかの高度なデータ構造の基本的な使用法を紹介します。 Counter は要素の出現数を便利にカウントでき、defaultdict はキーのデフォルト値を設定でき、OrderedDict は要素の挿入順序を記憶でき、deque はキューとスタックの操作を効率的に実行できます。実際の Python 開発では、これらのデータ構造を柔軟に使用することで、より効率的なプログラミング体験がもたらされます。
以上がPython 2.x で高度なデータ構造操作にコレクション モジュールを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。