我的函數檢查列表中第一個元素具有多少個重複項。計算列表中重複項目的數量時返回錯誤的值
def duplicate(lst):
count=0
length = len(lst)
for i in range(1,length):
if lst[0]== lst[i]:
count+=1
print [(lst[i]),count]
例如:
duplicate(["hello", "hello","hello", "yes", "no"])=>['hello',2]
上述工作正常,但是說,我只是想存儲的數值爲「計數」,我調整我的代碼下面,總是返回值1對於代替2正確「計數」「計數」,使用前面的例子:
def duplicate(lst):
count=0
length = len(lst)
for i in range(1,length):
if lst[0]== lst[i]:
count+=1
return count
我知道那裏是做這個用集(更簡單的方法),但是我想知道我在哪裏在我的For Loop中錯了當累計變量'count'的值時。
看看[這個例子](http://stackoverflow.com/questions/15735406/converting-word-frequency-to-a-graphical-histogram-in-python)關於將詞頻轉換爲直方圖。看起來,創建一個單詞直方圖的過程與對列表中的重複項進行計數的過程非常相似,但我不確定多少適合您正在做的事情。 – Matt