Comparación y administración de nombres usando el módulo de herramientas de nombres en Python

Mientras trabajamos con documentos, podemos tener problemas en los que necesitamos trabajar con nombres. Este artículo analiza la biblioteca de herramientas de nombre que puede ayudar a realizar esta tarea. Se puede utilizar para gestionar y comparar nombres. Actualmente incluye nombres de estilo inglés y occidental.

Instalación:

Use el siguiente comando para instalar la biblioteca de herramientas de nombre:

pip install name_tools

Ejemplo 1: Trabajando con split()

La división() se usa para dividir el nombre en 4 partes, a saber, prefijo (Sr., Dr., etc.), primer nombre, segundo nombre y sufijo (Jr., II, etc.).

Python3

import name_tools
  
# examples to split name
name1 = name_tools.split("Mr. Sandeep Jain Sr.")
print(name1)
  
# examples to split name
name2 = name_tools.split("Mr. Manjeet Singh")
print(name2)
  
# examples to split name
name3 = name_tools.split("Dr. Robert D III")
print(name3)

Producción : 

('Mr.', 'Sandeep', 'Jain', 'Sr.')
('Mr.', 'Manjeet', 'Singh', '')
('Dr.', 'Robert', 'D', 'III')

Ejemplo 2: Trabajando con canonicalize()

Esta función convierte el nombre a su formato estándar: ‘Prefijos Primero Último, Sufijos’. Los espacios se escapan y las palabras se escriben con mayúscula.

Python3

import name_tools
  
print("Demonstrating Canonicalize : ")
# examples to canonicalize name
# returns String
name1 = name_tools.canonicalize("mr. sandeep jain, sr.")
print(name1)
  
# examples to canonicalize name
# returns String
name2 = name_tools.canonicalize("mr. manjeet Singh")
print(name2)
  
# examples to canonicalize name
# returns String
name3 = name_tools.canonicalize("dr.  robert d 3")
print(name3)

Producción : 

Mr. Sandeep Jain, Sr.
Mr. Manjeet Singh
Dr. Robert D 3

Ejemplo 3: Comparación de nombres 

La comparación de nombres se realiza mediante match(), que toma 2 nombres y los compara con factores como el orden de las palabras, las iniciales, los honoríficos y los títulos. Dando a cada factor un peso específico.

Python3

import name_tools
  
print("Demonstrating Matching names : ")
  
# examples to match name
# returns percentage similarity
match1 = name_tools.match("Mr Sandeep", "Sandeep")
print(match1)
  
match2 = name_tools.match("Mr. Sandeep Jain", "Dr. Sandeep Jain")
print(match2)
  
match3 = name_tools.match("Mr. Jain Sandeep", "Mr. Sandeep Jain")
print(match3)

Producción : 

0.95
0.8999999999999999
0.0

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *