找出列表中重複的元素及個數

2022-06-08 04:51:09 字數 1080 閱讀 9853

方法一:將陣列轉成集合,然後迴圈

data = [1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 4, 4, 5, 6, 7, 8, 8, 8, 8, 8, 8, 9]

lis = set(data)

for i in lis:

if data.count(i) > 1:

print('data陣列中重複的元素是%d,它的個數是%d個' % (i, data.count(i)))

方法二:定義空字典,將value的值大於1的新增到空字典裡,然後迴圈字典的key和value

data = [1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 4, 4, 5, 6, 7, 8, 8, 8, 8, 8, 8, 9]

a = {}

for i in data:

if data.count(i) > 1:

a[i] = data.count(i) # i是key,data.count(i)是value

for j, k in a.items():

print('data陣列中重複的元素有%d,它的個數是%d個' % (j, k))

方法三:不用count方法,迴圈判斷空字典裡如果有key,就對該key的value加1,沒有key就讓該key的value等於1

def get_element(data):

dic = {}

i = 0

while i < len(data):

if data[i] in dic:

dic[data[i]] += 1

else:

dic[data[i]] = 1

i += 1

for j, k in dic.items():

if k > 1:

print('data陣列中重複的元素有%d,它的個數是%d個' % (j, k))

my_list = [1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4]

get_element(my_list)

找出陣列中重複的元素

方法一 使用位圖法,再申請乙個陣列b,用b a i 儲存a i 的重複次數 方法二 使用map對映表。map是乙個容器。第乙個元素為關鍵字key,第二個元素為關鍵字的值。這裡是map的基本用法 include include using namespace std bool findmostfreq...

輸出列表中元素的方法

今天看了的博文,受益良多 以下是我根據 一文總結 最簡單的方法 list1 5,8,hello a print list1 5,8,hello a 對列表進行解包 list1 5,8,hello a a,b,c,d list1 a,b,c,d 5,8,hello a 用列表名索引 list1 5,8...

列表操作,列表的建立和輸出列表中相同的元素

這裡是用隨機數建立列表的,randint 0,15 為生成0 15內的隨機數,利用列表的推導進行列表的建立 from random import randint l1 randint 0,15 for i in range 10 l2 randint 0,15 for i in range 10 p...