logo

„Python“ programa, skirta generuoti atsitiktinę eilutę

Atsitiktinis reiškia duomenų ar informacijos rinkinį, kuris gali būti prieinamas bet kokia tvarka. The atsitiktinis modulis python naudojamas atsitiktinėms eilutėms generuoti. Atsitiktinė eilutė susideda iš skaičių, simbolių ir skyrybos ženklų serijų, kuriose gali būti bet koks šablonas. Atsitiktinis modulis turi du metodus random.choice() ir paslaptys.pasirinkimas() , kad sukurtumėte saugią eilutę. Supraskime, kaip sugeneruoti atsitiktinę eilutę naudojant random.choice() ir secrets.choice() metodus pitonas .

„Python“ programa, skirta generuoti atsitiktinę eilutę

Naudojant random.choice()

The random.choice() Funkcija naudojama python eilutėje, kad sugeneruotų simbolių ir skaitmenų seką, kuri gali pakartoti eilutę bet kokia tvarka.

Sukurkite programą, kuri generuotų atsitiktinę eilutę naudodami random.choices() funkciją.

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 

Išvestis:

stdin c
„Python“ programa, skirta generuoti atsitiktinę eilutę

Toliau pateikiamas metodas, naudojamas atsitiktiniam moduliui, generuojant atsitiktinę eilutę.

slinkties ratukas neveikia
Metodai apibūdinimas
String.ascii_letters Jis grąžina atsitiktinę eilutę, kurioje yra tiek didžiųjų, tiek mažųjų raidžių.
Eilutė_ascii_didžioji raidė Tai atsitiktinis eilutės metodas, kuris grąžina eilutę tik didžiosiomis raidėmis.
String.ascii_lowercase Tai atsitiktinis eilutės metodas, kuris grąžina eilutę tik mažosiomis raidėmis.
Styga.skaitmenys Tai atsitiktinės eilutės metodas, kuris grąžina eilutę su skaitiniais simboliais.
Styga.skyrybos ženklai Tai atsitiktinis eilutės metodas, kuris grąžina eilutę su skyrybos ženklais.

Sugeneruokite atsitiktinę didžiųjų ir mažųjų raidžių eilutę

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 

Išvestis:

„Python“ programa, skirta generuoti atsitiktinę eilutę

Atsitiktinė nurodytų simbolių eilutė

Specific.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) 

Išvestis:

„Python“ programa, skirta generuoti atsitiktinę eilutę

Pastaba: Metodas random.choice() naudojamas python programoje, norint kartoti tas pačias simbolių eilutes. Jei nenorime rodyti pasikartojančių simbolių, turėtume naudoti funkciją random.sample().

Sugeneruokite atsitiktinę eilutę nekartodami tų pačių simbolių

BeRepeat.py

 # 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) 

Išvestis:

„Python“ programa, skirta generuoti atsitiktinę eilutę

Kaip matome aukščiau pateiktoje išvestyje, random.sample() metodas grąžina eilutę, kurioje visi simboliai yra unikalūs ir nesikartoja. Tuo tarpu random.choice() metodas grąžina eilutę, kurioje gali būti pasikartojančių simbolių. Taigi, galime pasakyti, kad jei norime sugeneruoti unikalią atsitiktinę eilutę, naudokite Atsitiktinis pavyzdys () metodas.

uml diagrama java

Sugeneruokite atsitiktinę raidinę ir skaitmeninę eilutę, kurią sudaro fiksuotos raidės ir skaitmenys

Pavyzdžiui, tarkime, kad norime atsitiktinai sugeneruotos raidinės ir skaitmeninės eilutės, kurią sudaro penkios raidės ir keturi skaitmenys. Šiuos parametrus turime apibrėžti funkcijoje.

java cast int į eilutę

Parašykime programą, kuri sugeneruotų raidinę ir skaitmeninę eilutę, kurioje yra fiksuotas skaičius raidžių ir skaitmenų.

fixString.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)) 

Išvestis:

„Python“ programa, skirta generuoti atsitiktinę eilutę

Naudojant secrets.choice()

Secrets.choice() metodas naudojamas saugesnei atsitiktinei eilutei generuoti nei random.choice(). Tai kriptografiškai atsitiktinių eilučių generatorius, užtikrinantis, kad naudojant secrets.choice() metodą, jokie du procesai negalėtų gauti tų pačių rezultatų vienu metu.

Parašykime programą, kuri spausdintų saugią atsitiktinę eilutę, naudodami secrets.choice metodą.

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)) 

Išvestis:

„Python“ programa, skirta generuoti atsitiktinę eilutę

Norėdami sugeneruoti saugią atsitiktinę eilutę, naudokite kitą atsitiktinio modulio metodą.

Parašykime programą saugioms atsitiktinėms eilutėms spausdinti naudodami skirtingus secrets.choice() metodus.

Secret.py

konvertuoti str į int
 # 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)) 

Išvestis:

„Python“ programa, skirta generuoti atsitiktinę eilutę