如何在 Python 列表中計算唯一值

Jinku Hu 2022年1月22日 2020年11月24日 Python Python List
  1. 使用 collections.counter 來計算 Python 列表中的唯一值
  2. 使用 set 來計算 Python 列表中的唯一值
  3. 使用 numpy.unique 計算 Python 列表中的唯一值
如何在 Python 列表中計算唯一值

本文將介紹不同的方法來計算列表中的唯一值,使用以下方法。

  • collections.Counter
  • set(listName)
  • np.unique(listName)

使用 collections.counter 來計算 Python 列表中的唯一值

collections 是一個 Python 標準庫,它包含 Counter 類來計算可雜湊物件。

Counter 類有兩個方法。

  1. keys() 返回列表中的唯一值。
  2. values() 返回列表中每個唯一值的計數。

我們可以使用 len() 函式,通過傳遞 Counter 類作為引數來獲得唯一值的數量。

示例程式碼

from collections import Counter

words = ['Z', 'V', 'A', 'Z','V']

print(Counter(words).keys())
print(Counter(words).values())

print(Counter(words))

輸出:

['V', 'A', 'Z']
[2, 1, 2]
3

使用 set 來計算 Python 列表中的唯一值

set 是一個無序的集合資料型別,它是可迭代、可變、沒有重複元素的型別。當我們使用 set() 函式將列表轉換為 set 後,我們可以得到 set 的長度來計算列表中的唯一值。

示例程式碼

words = ['Z', 'V', 'A', 'Z','V']
print(len(set(words)))

輸出:

3

使用 numpy.unique 計算 Python 列表中的唯一值

numpy.unique 返回輸入陣列類資料的唯一值,如果 return_counts 引數設定為 True,還返回每個唯一值的計數。

示例程式碼

import numpy as np

words = ['Z', 'V', 'A', 'Z','V']

np.unique(words)

print(len(np.unique(words)))

輸出:

3
Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

相關文章 - Python List

  • 在 Python 中將字典轉換為列表
  • 從 Python 列表中刪除某元素的所有出現
  • 在 Python 中從列表中刪除重複項
  • 如何在 Python 中獲取一個列表的平均值
  • Python 列表方法 append 和 extend 之間有什麼區別
  • 如何在 Python 中將列表轉換為字串