セットとマルチセット

投稿者: | 2023-03-20

目次

セットの用途

  • 『Pythonトリック』5.4より
  • ミュータブルなセット、イミュータブル(変更不可)なセット、マルチセット(バック)の3種が実装可能
  • セットは、順序バラバラ、重複なし、となる
  • 空のセットは set() でつくる。

set(ミュータブル)

# set(ミュータブル)
words = 'すもももももももものうち'
d = set(words)
print(d)
{'す', 'ち', 'の', 'も', 'う'}

frozenset(イミュータブル)

# frozenset(イミュータブルなセット)
# とばす

Counter マルチセット

# マルチセット(Counter)
from collections import Counter
storage = Counter()
shopping = {'milk':1, 'orange':1}
storage.update(shopping)
print(storage)
Counter({'milk': 1, 'orange': 1})
more_shopping = {'milk':1, 'orange':1, 'icecream':3}
storage.update(more_shopping)
print(storage)
Counter({'icecream': 3, 'milk': 2, 'orange': 2})
# キーの総数
len(storage)
3
# 要素の総数m(注意)
sum(storage.values())
7
storage['milk']
2