Python | Generar string aleatoria de longitud dada

El problema de la generación de números aleatorios es bastante común, pero a veces, tenemos aplicaciones que nos exigen mejorar eso y proporcionar alguna funcionalidad para generar una string aleatoria de dígitos y alfabetos para aplicaciones como contraseñas. Discutamos ciertas formas en las que esto se puede realizar en Python . Aquí, usaremos la generación de strings aleatorias con letras mayúsculas y dígitos

Método 1: generar una string aleatoria usando random.choices()

Esta función random.choices()  de un módulo aleatorio puede ayudarnos a lograr esta tarea y proporciona una alternativa de una sola línea a un ciclo completo que podría ser necesario para esta tarea en particular. Funciona con Python > v3.6. 

Ejemplo 1: generación de strings aleatorias con letras mayúsculas

Python3

import string
import random
 
# initializing size of string
N = 7
 
# using random.choices()
# generating random strings
res = ''.join(random.choices(string.ascii_uppercase +
                             string.digits, k=N))
 
# print result
print("The generated random string : " + str(res))

Producción :

The generated random string : 0D5YE91

Ejemplo 2: generar una string aleatoria de una longitud determinada en minúsculas

Python3

import string
import random
 
# initializing size of string
N = 7
 
# using random.choices()
# generating random strings
res = ''.join(random.choices(string.ascii_lowercase +
                             string.digits, k=N))
 
# print result
print("The generated random string : " + str(res))

Producción:

The generated random string : ipxktny

Ejemplo 3: generar una string aleatoria de una longitud determinada en mayúsculas y minúsculas

Python3

import string
import random
 
# initializing size of string
N = 7
 
# using random.choices()
# generating random strings
res = ''.join(random.choices(string.ascii_letters, k=N))
 
# print result
print("The generated random string : " + str(res))

Producción:

The generated random string : ALpxvmI

Método 2: Genera una string aleatoria usando secrets.choice()

Podemos generar strings aleatorias y contraseñas en Python usando secrets.choice(). Para números aleatorios criptográficamente más seguros, esta función del módulo secreto se puede utilizar ya que su algoritmo interno está enmarcado de manera que genera números aleatorios menos predecibles.

Python3

import secrets
import string
 
# initializing size of string
N = 7
 
# using random.choices()
# generating random strings
res = ''.join(secrets.choice(string.ascii_uppercase + string.digits)
              for i in range(N))
 
# print result
print("The generated random string : " + str(res))
Producción : 

The generated random string : T7HPKVR

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 *