ソートされていないリストから同様の要素を削除する必要があります。同様の要素を取り除いてループで固有の要素を残す
私は、各要素間の差を比較する機能をコード化されてきましたが、それは取得し続けて頭の中で最初に起動するからユニークな要素を残したが、5の差異内の要素を削除したい
[(579, 271, 97, 114), (580, 271, 97, 114), (578, 272, 97, 114), (579, 272, 97, 114), (580, 272, 97, 114), (581, 272, 97, 114), (577, 273, 97, 114), (578, 273, 97, 114), (579, 273, 97, 114), (580, 273, 97, 114), (581, 273, 97, 114), (582, 273, 97, 114), (577, 274, 97, 114), (578, 274, 97, 114), (579, 274, 97, 114), (580, 274, 97, 114), (581, 274, 97, 114), (582, 274, 97, 114), (577, 275, 97, 114), (578, 275, 97, 114), (579, 275, 97, 114), (580, 275, 97, 114), (581, 275, 97, 114), (578, 276, 97, 114), (579, 276, 97, 114), (580, 276, 97, 114), (581, 276, 97, 114), (579, 277, 97, 114), (22, 460, 97, 114), (23, 460, 97, 114), (133, 460, 97, 114), (134, 460, 97, 114), (21, 461, 97, 114), (22, 461, 97, 114), (23, 461, 97, 114), (24, 461, 97, 114), (132, 461, 97, 114), (133, 461, 97, 114), (134, 461, 97, 114), (135, 461, 97, 114), (20, 462, 97, 114), (21, 462, 97, 114), (22, 462, 97, 114), (23, 462, 97, 114), (24, 462, 97, 114), (131, 462, 97, 114), (132, 462, 97, 114), (133, 462, 97, 114), (134, 462, 97, 114), (135, 462, 97, 114), (136, 462, 97, 114), (20, 463, 97, 114), (21, 463, 97, 114), (22, 463, 97, 114), (23, 463, 97, 114), (24, 463, 97, 114), (131, 463, 97, 114), (132, 463, 97, 114), (133, 463, 97, 114), (134, 463, 97, 114), (135, 463, 97, 114), (136, 463, 97, 114), (20, 464, 97, 114), (21, 464, 97, 114), (22, 464, 97, 114), (23, 464, 97, 114), (24, 464, 97, 114), (131, 464, 97, 114), (132, 464, 97, 114), (133, 464, 97, 114), (134, 464, 97, 114), (135, 464, 97, 114), (136, 464, 97, 114), (21, 465, 97, 114), (22, 465, 97, 114), (23, 465, 97, 114), (132, 465, 97, 114), (133, 465, 97, 114), (134, 465, 97, 114), (135, 465, 97, 114), (22, 466, 97, 114), (133, 466, 97, 114), (134, 466, 97, 114)]
大。
def compare_remove(input_list):
cnt = 0
glob_cnt = 0
output_list = [input_list[0]]
while True:
for i in range(len(input_list)):
if i <= cnt:
print 'jump || '
continue
if abs(output_list[cnt][0] - input_list[i][0]) <= 5:
if abs(output_list[cnt][0] - input_list[i][0]) == 0:
continue
print 'skip ||' + str(output_list[cnt]) +' || ' + str(input_list[i])
continue
else:
print 'append || ' + str(input_list[i])
output_list.append(input_list[i])
print 'loop out || '
input_list = output_list
cnt+=1
if cnt == 100:
break
try:
output_list[cnt]
except:
break
return output_list
これは要素の最初の要素を比較し、前の要素との違いを削除します。
があなたの予想出力は何ですか? '5 'の違いは、最初の要素を比較しているように見えます。 – AChampion
@AChampionが尋ねたように、「5の違い」は何ですか?いくつかの例を挙げてください。 –