1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Pythonの配列と辞書型に関する標準ライブラリ利用tips

Last updated at Posted at 2020-03-14

Pythonの言語学習の過程で、標準ライブラリの範疇で実施できるコーディングtipsをメモ。
実務ではNumPyやCounterなどの便利なライブラリで一撃かもしれないため、かなり基礎的かつ遠回りな書き方になると思われます。

リストの値の出現回数をカウントする

2020.03.15
forで回す際にわざわざrangeの範囲指定をしていたのを修正
for i in range(0, len(origin_list)):

origin_list = [1, 2, 3, 4, 5, 1, 2, 3, 4, 1, 2, 3, 1, 2, 1]
counter_dict = dict.fromkeys(list(set(origin_list)), 0)
for value in origin_list:
    counter_dict[value] += 1

# 結果
# {1: 5, 2: 4, 3: 3, 4: 2, 5: 1}

結果を格納するディクショナリの初期化を行います。
元リストの値をkeyにするあたり一度ユニークな値だけに絞ります。
ここでは一度ディクショナリに格納することで重複を取り除き再度リスト化しています。

list(set(origin_list))

作成したディクショナリのvalueを初期化するためにdict.fromkeysを使って一括初期値設定します。

counter_dict = dict.fromkeys(リスト, 初期値)

あとは元リストをカウントアップするだけ。

for value in origin_list:
    counter_dict[value] += 1
1
2
7

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?