您好,我正在嘗試重新排列2d列表,以便在不使用內置函數的情況下處理名稱重複。但是當我去打印我得到這個錯誤不能在不支持的操作數類型中找到錯誤 - :'list'和'int'
TypeError: unsupported operand type(s) for -: 'list' and 'int'
問題的代碼是
if c[i][0]==c[i+1][0] and c[c-1][0]!= c[i][0] :
和代碼IM希望運行我的計劃,我不能檢查,因爲這個錯誤是
d = []
d.append(c[0][0])
d.append(c[0][1])
i = 1
while size - 1 :
# for more multiple repeats,append only classes
if c[i][0]==c[i+1][0] and c[i-1][0]==c[i][0] :
d.append(c[i][1])
d.append(c[i+1][1])
# for single repeats, append name, and classes
if c[i][0]==c[i+1][0] and c[c-1][0]!= c[i][0] :
d.append(c[i][0])
d.append(c[i][1])
d.append(c[i+1][1])
# no previous repeats, append name and class
else :
d.append(c[i][0])
d.append(c[i][1])
i = i + 1
print d
im不知道爲什麼它會導致錯誤,因爲前面的if語句沒有引起任何問題。也許它與!=
聲明有關?如果你想運行代碼清單被處理爲
[['Adam', 'PHYS 1443'], ['Ashley', 'IE 3312'], ['Ashley', 'PHYS 1443'], ['August', 'PHYS 1444'], ['Baron', 'PHYS 1443'], ['Christopher', 'IE 3301'], ['Christopher', 'CSE 1320'], ['Christopher', 'PHYS 1443'], ['Dylan', 'CSE 1310'], ['Henry', 'PHYS 1444'], ['James', 'IE 3301'], ['James', 'PHYS 1443'], ['Jonathan', 'IE 3312'], ['Krishna', 'CSE 1310'], ['Luis', 'CSE 1310'], ['Michael', 'IE 3301'], ['Nang', 'PHYS 1443'], ['Pramod', 'PHYS 1444'], ['Pramod', 'PHYS 1443'], ['Saroj', 'IE 3301'], ['Saroj', 'MATH 1426'], ['Sol', 'CSE 1310'], ['Timothy', 'MATH 2325'], ['Timothy', 'IE 3301']]
感謝,我沒有,甚至看到。但現在我的列表超出範圍。織補 –
好吧,我看到其他錯誤。 nvm和感謝 –
你可以爲它添加一個簡單的檢查,如果索引超出了任何一端的範圍,你想停止它。 –