Случајни се односи на прикупљање података или информација које могу бити доступне било којим редоследом. Тхе насумично модул у Питхон-у користи се за генерисање насумичних низова. Насумични низ се састоји од бројева, знакова и низова знакова интерпункције који могу да садрже било који образац. Рандом модул садржи две методе рандом.цхоице() и сецретс.цхоице() , за генерисање безбедног стринга. Хајде да разумемо како да генеришемо насумични низ користећи методе рандом.цхоице() и сецретс.цхоице() у питхон .
Коришћење рандом.цхоице()
Тхе рандом.цхоице() функција се користи у Питхон стрингу за генерисање низа знакова и цифара који могу поновити стринг било којим редоследом.
скуп алата за опруге
Креирајте програм за генерисање случајног стринга користећи функцију рандом.цхоицес().
рандом_стр.пи
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
Излаз:
Следи метод који се користи у рандом модулу за генерисање случајног низа.
Методе | Опис |
---|---|
Стринг.асции_леттерс | Враћа насумични низ који садржи и велика и мала слова. |
Стринг_асции_упперцасе | То је метод насумичних стрингова који враћа стринг само великим словима. |
Стринг.асции_ловерцасе | То је метод насумичних стрингова који враћа стринг само малим словима. |
Стринг.дигитс | То је метод случајног стринга који враћа стринг са нумеричким знаковима. |
Стринг.интерпункција | То је метод насумичних стрингова који враћа низ са знаковима интерпункције. |
Генеришите насумични низ великих и малих слова
УпрЛвр.пи
# 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
Излаз:
Насумични низ специфицираних знакова
Специфиц.пи
# 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)
Излаз:
Напомена: Метода рандом.цхоице() се користи у питхон програму за понављање истих низова знакова. Ако не желимо да приказујемо знакове који се понављају, требало би да користимо функцију рандом.сампле().
Генеришите насумични низ без понављања истих знакова
ВитхоутРепеат.пи
# 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)
Излаз:
Као што можемо видети у горњем излазу, метода рандом.сампле() враћа стринг у коме су сви карактери јединствени и не понављају се. Док, метода рандом.цхоице() враћа стринг који може да садржи знакове који се понављају. Дакле, можемо рећи да ако желимо да генеришемо јединствени насумични низ, употребите Случајни узорак () метода.
Генеришите насумични алфанумерички низ који се састоји од фиксних слова и цифара
На пример, претпоставимо да желимо насумично генерисан алфанумерички низ који садржи пет слова и четири цифре. Морамо да дефинишемо ове параметре у функцији.
Хајде да напишемо програм за генерисање алфанумеричког низа који садржи фиксни број слова и цифара.
фикедСтринг.пи
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))
Излаз:
Коришћење сецретс.цхоице()
Метода сецретс.цхоице() се користи да генерише сигурнији насумични низ од рандом.цхоице(). То је криптографски насумични генератор стрингова који обезбеђује да два процеса не могу истовремено да добију исте резултате коришћењем методе сецретс.цхоице().
Хајде да напишемо програм за штампање безбедног случајног низа користећи метод сецретс.цхоице.
Сецрет_стр.пи
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))
Излаз:
Користите различите методе рандом модула да генеришете сигуран насумични низ.
Хајде да напишемо програм за штампање сигурних насумичних стрингова користећи различите методе сецретс.цхоице().
Сецрет.пи
# 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))
Излаз: