logo

Programme Python pour générer une chaîne aléatoire

Un caractère aléatoire fait référence à la collecte de données ou d'informations qui peuvent être disponibles dans n'importe quel ordre. Le aléatoire module en python est utilisé pour générer des chaînes aléatoires. La chaîne aléatoire est composée de chiffres, de caractères et de séries de ponctuations pouvant contenir n'importe quel motif. Le module aléatoire contient deux méthodes choix aléatoire() et secrets.choix() , pour générer une chaîne sécurisée. Voyons comment générer une chaîne aléatoire à l'aide des méthodes random.choice() et secrets.choice() dans python .

Programme Python pour générer une chaîne aléatoire

Utiliser random.choice()

Le choix aléatoire() La fonction est utilisée dans la chaîne Python pour générer la séquence de caractères et de chiffres qui peuvent répéter la chaîne dans n'importe quel ordre.

Créez un programme pour générer une chaîne aléatoire à l'aide de la fonction random.choices().

random_str.py

 import string import random # define the random module S = 10 # number of characters in the string. # call random.choices() string module to find the string in Uppercase + numeric data. ran = ''.join(random.choices(string.ascii_uppercase + string.digits, k = S)) print('The randomly generated string is : ' + str(ran)) # print the random data 

Sortir:

Programme Python pour générer une chaîne aléatoire

Voici la méthode utilisée dans le module random pour générer la chaîne aléatoire.

Méthodes Description
String.ascii_letters Il renvoie une chaîne aléatoire contenant des caractères majuscules et minuscules.
String_ascii_uppercase Il s'agit d'une méthode de chaîne aléatoire qui renvoie uniquement une chaîne en caractères majuscules.
String.ascii_lowercase Il s'agit d'une méthode de chaîne aléatoire qui renvoie une chaîne uniquement en caractères minuscules.
Chaîne.chiffres Il s'agit d'une méthode de chaîne aléatoire qui renvoie une chaîne contenant des caractères numériques.
Chaîne.ponctuation Il s'agit d'une méthode de chaîne aléatoire qui renvoie une chaîne avec des caractères de ponctuation.

Générer une chaîne aléatoire de lettres majuscules et minuscules

UprLwr.py

 # write a program to generate the random string in upper and lower case letters. import random import string def Upper_Lower_string(length): # define the function and pass the length as argument # Print the string in Lowercase result = ''.join((random.choice(string.ascii_lowercase) for x in range(length))) # run loop until the define length print(' Random string generated in Lowercase: ', result) # Print the string in Uppercase result1 = ''.join((random.choice(string.ascii_uppercase) for x in range(length))) # run the loop until the define length print(' Random string generated in Uppercase: ', result1) Upper_Lower_string(10) # define the length 

Sortir:

Programme Python pour générer une chaîne aléatoire

Chaîne aléatoire de caractères spécifiés

Spécifique.py

 # create a program to generate the random string of given letters. import random import string def specific_string(length): sample_string = 'pqrstuvwxy' # define the specific string # define the condition for random string result = ''.join((random.choice(sample_string)) for x in range(length)) print(' Randomly generated string is: ', result) specific_string(8) # define the length specific_string(10) 

Sortir:

Programme Python pour générer une chaîne aléatoire

Remarque : La méthode random.choice() est utilisée dans le programme python pour répéter les mêmes chaînes de caractères. Si nous ne voulons pas afficher de caractères répétitifs, nous devons utiliser la fonction random.sample().

Générer une chaîne aléatoire sans répéter les mêmes caractères

SansRepeat.py

différence entre aimer et aimer
 # create a program to generate a string with or without repeating the characters. import random import string print('Use of random.choice() method') def specific_string(length): letters = string.ascii_lowercase # define the lower case string # define the condition for random.choice() method result = ''.join((random.choice(letters)) for x in range(length)) print(' Random generated string with repetition: ', result) specific_string(8) # define the length specific_string(10) print('') # print the space print('Use of random.sample() method') def WithoutRepeat(length): letters = string.ascii_lowercase # define the specific string # define the condition for random.sample() method result1 = ''.join((random.sample(letters, length))) print(' Random generated string without repetition: ', result1) WithoutRepeat(8) # define the length WithoutRepeat(10) 

Sortir:

compter SQL distinct
Programme Python pour générer une chaîne aléatoire

Comme nous pouvons le voir dans le résultat ci-dessus, la méthode random.sample() renvoie une chaîne dans laquelle tous les caractères sont uniques et non répétitifs. Alors que la méthode random.choice() renvoie une chaîne pouvant contenir des caractères répétitifs. Ainsi, nous pouvons dire que si nous voulons générer une chaîne aléatoire unique, utilisez échantillon aléatoire () méthode.

Générer une chaîne alphanumérique aléatoire composée de lettres et de chiffres fixes

Par exemple, supposons que nous souhaitions une chaîne alphanumérique générée aléatoirement contenant cinq lettres et quatre chiffres. Nous devons définir ces paramètres dans la fonction.

Écrivons un programme pour générer une chaîne alphanumérique contenant un nombre fixe de lettres et de chiffres.

chaînefixe.py

 import random import string def random_string(letter_count, digit_count): str1 = ''.join((random.choice(string.ascii_letters) for x in range(letter_count))) str1 += ''.join((random.choice(string.digits) for x in range(digit_count))) sam_list = list(str1) # it converts the string to list. random.shuffle(sam_list) # It uses a random.shuffle() function to shuffle the string. final_string = ''.join(sam_list) return final_string # define the length of the letter is eight and digits is four print('Generated random string of first string is:', random_string(8, 4)) # define the length of the letter is seven and digits is five print('Generated random string of second string is:', random_string(7, 5)) 

Sortir:

Programme Python pour générer une chaîne aléatoire

Utiliser secrets.choice()

Une méthode secrets.choice() est utilisée pour générer une chaîne aléatoire plus sécurisée que random.choice(). Il s'agit d'un générateur de chaînes cryptographiquement aléatoires qui garantit que deux processus ne peuvent pas obtenir les mêmes résultats simultanément à l'aide de la méthode secrets.choice().

Écrivons un programme pour imprimer une chaîne aléatoire sécurisée à l'aide de la méthode secrets.choice.

Secret_str.py

 import random import string import secrets # import package num = 10 # define the length of the string # define the secrets.choice() method and pass the string.ascii_letters + string.digits as an parameters. res = ''.join(secrets.choice(string.ascii_letters + string.digits) for x in range(num)) # print the Secure string print('Secure random string is :'+ str(res)) 

Sortir:

Programme Python pour générer une chaîne aléatoire

Utilisez les différentes méthodes du module random pour générer une chaîne aléatoire sûre.

Écrivons un programme pour imprimer des chaînes aléatoires sécurisées en utilisant différentes méthodes de secrets.choice().

Secret.py

 # write a program to display the different random string method using the secrets.choice(). # imports necessary packages import random import string import secrets num = 10 # define the length of the string # define the secrets.choice() method and pass the string.ascii_letters + string.digits as an parameters. res = ''.join(secrets.choice(string.ascii_letters + string.digits) for x in range(num)) # Print the Secure string with the combination of ascii letters and digits print('Secure random string is :'+ str(res)) res = ''.join(secrets.choice(string.ascii_letters) for x in range(num)) # Print the Secure string with the combination of ascii letters print('Secure random string is :'+ str(res)) res = ''.join(secrets.choice(string.ascii_uppercase) for x in range(num)) # Print the Secure string in Uppercase print('Secure random string is :'+ str(res)) res = ''.join(secrets.choice(string.ascii_lowercase) for x in range(num)) # Print the Secure string in Lowercase print('Secure random string is :'+ str(res)) res = ''.join(secrets.choice(string.ascii_letters + string.punctuation) for x in range(num)) # Print the Secure string with the combination of letters and punctuation print('Secure random string is :'+ str(res)) res = ''.join(secrets.choice(string.digits) for x in range(num)) # Print the Secure string using string.digits print('Secure random string is :'+ str(res)) res = ''.join(secrets.choice(string.ascii_letters + string.digits + string.punctuation) for x in range(num)) # Print the Secure string with the combonation of letters, digits and punctuation print('Secure random string is :'+ str(res)) 

Sortir:

Programme Python pour générer une chaîne aléatoire