GETTERS
unknown
python
3 years ago
1.4 kB
7
Indexable
if __name__ == 'main':
pass
import numpy as np
def generar_nombre_aleatorio(lista_nombres: np.array, lista_apellidos: np.array, numero_nombres: int):
# Seleccionamos un nombre y un apellido aleatorios de las listas
nombres: list[str] = [np.random.choice(lista_nombres) for i in range(numero_nombres)]
apellidos: list[str] = [np.random.choice(lista_apellidos) for i in range(numero_nombres)]
nombres: np.array = np.array(nombres)
apellidos: np.array = np.arry(apellidos)
# Devolvemos el nombre y el apellido concatenados
return nombres, apellidos
def generar_dni_aleatorio(numero_dnis: int):
# Generamos un número aleatorio entre 100000000 y 999999999
numeros: np.array[int] = np.array([np.random.randint(100000000, 999999999) for i in range(numero_dnis)])
# Calculamos la letra del DNI a partir del número generado
letras = "TRWAGMYFPDXBNJZSQVHLCKE"
restos: np.array(int) = np.array(numeros % 23)
restos: np.array[str] = np.array([str(valor for valor in restos)])
letra: np.array[str] = np.array([letras[value] for value in restos])
dnis: np.array[str] = sumar_listas(numeros, letra)
# Devolvemos el DNI como una cadena de 8 dígitos y una letra
return dnis
def sumar_listas(lista1, lista2):
# Sumamos cada par de elementos usando la función map()
suma = list(map(lambda x, y: x + y, lista1, lista2))
# Devolvemos la suma
return sumaEditor is loading...