Python список чисел и возвращает другой список, который содержит только числа, которые появляются только один раз - PullRequest
0 голосов
/ 11 февраля 2020

Я пытаюсь в python 2.7 к этому:
"Напишите программу, которая принимает список чисел и возвращает другой список, который содержит только числа, которые появляются только один раз"
Это мой код

list1 = [1,2,3,4,3,6,1,8,9,10,3,50]
list1.sort()
lst = set()
for i in xrange(len(list1)):
    if( int(list1[i]) == int(list1[i+=1]) ):
        continue
    else:
        lst.add(list1[i])

print (lst)

Я получил эту ошибку:

 if( int(list1[i]) == int(list1[i+=1]) ):
                                     ^
SyntaxError: invalid syntax

1 Ответ

0 голосов
/ 11 февраля 2020

Вы можете использовать список, в котором вы будете хранить все числа, которые вы уже перебрали, и проверить по этому списку, чтобы убедиться, что число уже вставлено:

list1 = [1,2,3,4,3,6,1,8,9,10,3,50]
dups = []
result = []
for elem in list1:
  if not elem in dups:
    result.append(elem)
    dups.append(elem)

print result

Это вернет:

[1, 2, 3, 4, 6, 8, 9, 10, 50]
...