Python - remove todos os registros de tupla duplicados
Às vezes, ao trabalhar com registros, podemos ter o problema de remover os registros que ocorrem mais de uma vez. Este tipo de aplicação pode ocorrer no domínio de desenvolvimento web. Vamos discutir algumas maneiras pelas quais essa tarefa pode ser executada.
Método # 1: Usando compreensão de lista + set() + count()
A abordagem inicial que pode ser aplicada é que podemos iterar em cada tupla e verificar sua contagem na lista usando count(), se for maior que um, podemos removê-los, convertendo-os em set.
test_list
=
[(
3
,
4
), (
4
,
5
), (
3
,
4
), (
3
,
6
), (
4
,
5
), (
6
,
7
)]
(
"The original list : "
+
str
(test_list))
res
=
list
(
set
([ele
for
ele
in
test_list
if
not
test_list.count(ele) >
1
]))
(
"All the non Duplicate from list are : "
+
str
(res))
A lista original: [(3, 4), (4, 5), (3, 4), (3, 6), (4, 5), (6, 7)] Todos os não duplicados da lista são: [(6, 7), (3, 6)]
Método 2: Usando Counter() + items()
+ compreensão de lista
A combinação das funções acima também pode ser usada para executar esta tarefa específica. Nisto, apenas obtemos a contagem de cada ocorrência do elemento usando Counter() como dicionário e extraímos todos aqueles cujo valor é igual a 1.
from
collections
import
Counter
test_list
=
[(
3
,
4
), (
4
,
5
), (
3
,
6
), (
3
,
4
), (
4
,
5
), (
6
,
7
)]
(
"The original list : "
+
str
(test_list))
res
=
[ele
for
ele, count
in
Counter(test_list).items()
if
count
=
=
1
]
(
"All the non Duplicate from list are : "
+
str
(res))
A lista original: [(3, 4), (4, 5), (3, 4), (3, 6), (4, 5), (6, 7)] Todos os não duplicados da lista são: [(6, 7), (3, 6)]
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva