python列表中重復元素
❶ python list找出一個元素的位置(重復元素怎麼分別找出位置)
幾種方式的回答:
1)
print('*'*15,'想找出裡面有重復數據的索引值','*'*15)
listA = [100, 94, 88, 82, 76, 70, 64, 58, 52, 46, 40, 34,76]
print('列表中第1次出現的位置 = ',listA.index(76))
2)
a_list = ['a','b','c','c','d','c']
find = 'c'
print('重復元素出現的位置索引分別是 = ',[i for i,v in enumerate(a_list) if v==find])
-----------------------------------------------------
3)### 求某個元素重復的索引值,函數方式表述如下:
a_list = ['a','b','c','c','d','c']
def unique_index(L,f):
"""L表示列表, i表示索引值,v表示values,f表示要查找的元素 """
return [i for (i,v) in enumerate(L) if v==f]
print('索引值 = ',unique_index(a_list,'c'))
運行結果:
索引值 = [2, 3, 5]
4)還缺一種,列出多個元素重復的索引值,以後再補充
......
❷ Python。重復元素判定。編寫一個函數,接受列表作為參數
代碼如下:
def func1(num_list):
if len(num_list) != len(set(num_list)):
return True
else:
return False
if __name__ == '__main__':
num_list = [[1, 2, 3, 4], [6, 7, 8], [4, 5, 6, 6, 6]]
for one_list in num_list:
print(func1(one_list))
運行結果:
(2)python列表中重復元素擴展閱讀
python對列表去重的幾種方式:
1、直觀方法,先建立一個新的空列表,通過遍歷原來的列表,再利用邏輯關系not in 來去重。總結:這樣可以做出來,但是過程不夠簡單。但是此方法保證了列表的順序性。
2、利用set的自動去重功能,將列表轉化為集合再轉化為列表,利用集合的自動去重功能。簡單快速。缺點是:使用set方法無法保證去重後的順序。