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

У меня есть список кортежей. Каждый кортеж состоит из строки и слова. Теперь каждый диктант в этом состоит из списка кортежей. Размер списка составляет около 8 тыс. Записей.

Пример данных:

dataset = [('made of iron oxide', {'entities': [(12, 16, 'PRODUCT'), (17, 20, 'PRODUCT'), (15, 24, 'PRODUCT'), (12, 19, 'PRODUCT')]}),('made of ferric oxide', {'entities': [(10, 15, 'PRODUCT'), (12, 15, 'PRODUCT'), (624, 651, 'PRODUCT'), (1937, 1956, 'PRODUCT')]})]

Отсюда ожидается вывод:

dataset = [('made of iron oxide', {'entities': [(17, 20, 'PRODUCT'), (15, 24, 'PRODUCT')]}), ('made of ferric oxide', {'entities': [(624, 651, 'PRODUCT'), (1937, 1956, 'PRODUCT')]})]

Я хочу удалить перекрывающиеся числа в мой список, т.е. только уникальные номера должны быть там, а остальные должны быть удалены. Как мне добиться этого за Python?

Попытка, сделанная до сих пор:

visited = set()   
Output = [] 

# Iteration 
for a, b in dataset: 
    if not a in visited: 
        visited.add(a) 
        Output.append((a, b)) 
...