Search
Close this search box.
Precisa comparar textos com Python? Conheça difflib
comparar textos

Posts Relacionados:

Precisa comparar textos? Conheça o módulo difflib do Python para comparações de sequências, incluindo sequências de textos, de forma fácil e eficiente.

Receba nossa newsletter

Aprenda a comparar textos com Python

comparar textos Python

O módulo difflib em Python possui ferramentas para comparar sequências, o que pode ser particularmente útil para comparar textos. Ele conta com várias classes e funções que permitem identificar diferenças entre sequências, como strings ou listas, e produzir informações sobre essas diferenças em vários formatos. Conheça alguns de seus principais recursos a seguir.

Classe SequenceMatcher

A classe SequenceMatcher pode ser usada para verificar as semelhanças entre duas sequências. Ela possui um método chamado ratio() que retorna uma medida da similaridade das sequências como um float no intervalo [0, 1].

				
					import difflib

frase1 = "Sua obra foi de fundamental importância para as escolas."
frase2 = "Sua obra foi fundamentalmente importante para as escolas."

# SequenceMatcher
s = difflib.SequenceMatcher(None, frase1, frase2)
print(f"Similaridade: {s.ratio()}")
# resultado: Similaridade: 0.8672566371681416
				
			

Classe Differ

Essa classe pode ser usada para comparar textos arranjados em duas sequências de linhas. Ela indica quais são as diferenças entre elas num formato legível por humanos. Ou seja, essa classe destaca as variações entre as sequências, como adições, exclusões e modificações. Seu sistema de símbolos consiste no uso de ‘- ‘ para indicar elementos exclusivos da sequência 1, ‘+ ‘ para elementos exclusivos da sequência 2. As linhas que começam com ‘?’ tentam guiar nosso foco para as diferenças intra-linhas.⁣ Veja um exemplo de comparação com Differ abaixo:

				
					
frase1 = "Sua obra foi de fundamental importância para as escolas."
frase2 = "Sua obra foi fundamentalmente importante para as escolas."

# Differ
d = difflib.Differ()
diff = list(d.compare(frase1.splitlines(), frase2.splitlines()))
print('\n'.join(diff))

# resultado
# - Sua obra foi de fundamental importância para as escolas.
# ?              ---                  ^ ^^^

# + Sua obra foi fundamentalmente importante para as escolas.
# ?                         +++++       ^ ^^





				
			

função get_close_matches()

A função get_close_matches() localiza as melhores correspondências para uma determinada palavra a partir de uma lista de possibilidades. Ela é útil para tarefas como verificação ortográfica ou encontrar palavras semelhantes. Veja um exemplo de como usá-la abaixo:

				
					palavras = ["fundamento", "fundamentalmente", "fundamentado"]
close_matches = difflib.get_close_matches("fundamental", palavras)

print(f"Mais parecidos: {close_matches}")
# resultado: ['fundamentado', 'fundamento', 'fundamentalmente']

				
			

Neste código, fornecemos uma lista de palavras e uma palavra-chave que precisa ser comparada. A função get_close_matches() retorna uma lista com as palavras em ordem de similaridade.

Para saber mais sobre essa função e outros recursos do módulo difflib para comparar textos e outras sequências, consulte a documentação oficial.

Veja também:

Encontrou algum erro ou quer fazer uma sugestão? Por favor, entre em contato usando nosso formulário de contatos.

Imagem com IA Generativa – Dia 274

IA generativa img 274

Arte com IA generativa: imagem do dia

Todos os dias, postamos um exemplo de imagem artística gerada com inteligência artificial.

Tutoriais

Postagens Mais Recentes

Outras Postagens Que Podem Interessar

Veja
Mais

Fique em contato

Se inscreva para receber nossa newsletter com novidades.

aprendiz artificial