A veces, mientras trabajamos con un gran corpus de texto, podemos tener un problema en el que tratamos de encontrar qué carácter está actuando como delimitador. Esta puede ser una utilidad interesante y útil al trabajar con una gran cantidad de datos y juzgar el delimitador. En este artículo se analiza una manera de resolver este problema utilizando la biblioteca de Python de detect_delimiter.
Instalación
Para instalar este módulo, escriba el siguiente comando en la terminal.
pip instalar detectar_delimitador
El primer paso es verificar la presencia de todos los caracteres de la lista blanca en el texto de entrada; si se encuentran, esos caracteres se cuentan para la mayoría de las frecuencias y se devuelve un máximo de uno, ignorando todos los de la lista negra, si se proporcionan. Si no hay ningún delimitador de la lista blanca, los caracteres que evitan los caracteres de la lista negra se calculan con la frecuencia máxima; si se encuentran, ese carácter se devuelve como delimitador. Si aún no se encuentra el delimitador, se devuelve el valor predeterminado como delimitador si se proporciona; de lo contrario, se devuelve Ninguno.
Sintaxis: detect(text:str, text:str, default=Ninguno, whitelist=[‘,’, ‘;’, ‘:’, ‘|’, ‘\t’], blacklist=Ninguno)
text : La string de entrada para probar el delimitador.
predeterminado : el valor predeterminado para la salida en caso de que no se encuentre un delimitador válido.
lista blanca : el primer conjunto de caracteres que se comprobará en busca de delimitadores; si se encuentran, se tratan como delimitadores. Útil en los casos en que uno sabe de qué delimitadores son posibles. El valor predeterminado es [‘,’, ‘;’, ‘:’, ‘|’, ‘\t’].
lista negra: de forma predeterminada, todos los dígitos, alfabetos y punto final no se consideran como lista negra. En caso de que se necesite evitar que se etiqueten más valores como delimitadores, estos se evitarán en la verificación.
Ejemplo 1: Trabajando con detect() y default
En esto, se muestran algunos ejemplos de detección de delimitadores junto con el uso predeterminado.
Python3
from detect_delimiter import detect # simple example print("The found delimiter [base example] : ") print(detect("Geeksforgeeks-is-best-for-geeks")) # simple example without default and no delimiter # . is not considered as delim print("The found delimiter [no default] : ") print(detect("Geeksforgeeks.is.best.for.geeks")) # simple example with default # . is not considered as delim # No delim is found, hence, default is printed print("The found delimiter [with default] : ") print(detect("Geeksforgeeks.is.best.for.geeks", default='@'))
Producción :
Ejemplo 2: uso de parámetros de lista negra y lista blanca
Proporcionar un parámetro de lista blanca prioriza cualquier delimitador en particular incluso si su frecuencia es menor que el delimitador no incluido en la lista blanca. El parámetro de lista negra puede ayudar a ignorar cualquier delimitador.
Python3
from detect_delimiter import detect from string import ascii_letters # simple example # check for , as whitelist picked from default # - [',', ';', ':', '|', '\t'] print("The found delimiter [default whitelist] : ") print(detect("Geeksforgeeks$is-best,for-geeks")) # simple example with whitelist # ! prioritized print("The found delimiter [provided whitelist] : ") print(detect("Geeksforgeeks-is-best-for!geeks", whitelist=['@', "!"])) # simple example with blacklist # default blacklist overridden print("The found delimiter [provided blacklist] : ") print(detect("Geeksforgeeks-is-best-for!geeks", blacklist=['@', "-", 'e']))
Producción :
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA