Ismycode |.
В Python генерация случайной строки довольно простая. Тем не менее, есть сценарии, где нам нужно создать случайную строку, которая включает в себя буквенно-цифровые символы для сильного пароля.
Существуют различные подходы к достижению этой функциональности.
Генерировать случайную строку алфавита смешанного случая
Если вы хотите создать случайную строку алфавита смешанного чехла, то вы String.Ascii_Letters
и Random.Choice ( )
для данной указанной длины, как показано ниже.
import random import string def generateRandomString(length): # Generate mixed case alphabets string letters = string.ascii_letters result_str = ''.join(random.choice(letters) for i in range(length)) print("Random string of length", length, "is:", result_str) generateRandomString(8) # Output # Random string of length 8 is: hNIgRMoC
Генерировать случайную строку алфавита верхнего региона
Если вы хотите генерировать случайную строку буквы алфавита, то вы String.Ascii_upperCase
и Random.Choice ()
для данной указанной длины, как показано ниже.
import random import string def generateRandomUpperCaseString(length): # Generate upper case alphabets string letters = string.ascii_uppercase result_str = ''.join(random.choice(letters) for i in range(length)) print("Random upper case string of length", length, "is:", result_str) generateRandomUpperCaseString(10) # Output # Random upper case string of length 10 is: FXFUJHAUOJ
Генерировать случайную строку алфавита нижнего региона
Если вы хотите создать случайную строку в нижней части алфавита, то вы string.ascii_lowercase.
а также Random.Choice ()
для данной указанной длины, как показано ниже.
import random import string def generateRandomLowerCaseString(length): # Generate lower case alphabets string letters = string.ascii_lowercase result_str = ''.join(random.choice(letters) for i in range(length)) print("Random lower case string of length", length, "is:", result_str) generateRandomLowerCaseString(10) # Output # Random lower case string of length 10 is: rtssovidqa
питон
Генерировать случайную буквенно-цифровую строку
Если вы хотите создать случайную буквенно-цифровую строку, то вы String.Ascii_lowerCass + String.digits
и Random.Choice ()
для данной указанной длины, как показано ниже.
import random import string def generateRandomAlphaNumericString(length): # Generate alphanumeric string letters = string.ascii_lowercase + string.digits result_str = ''.join(random.choice(letters) for i in range(length)) print("Random alphanumeric string of length", length, "is:", result_str) generateRandomAlphaNumericString(12) # Output # Random alphanumeric string of length 12 is: ae8nd6149q7j
Создание случайного прочного пароля с использованием строкового модуля
Если вы хотите создать сильный пароль, используя строковый модуль, то вы String.Ascii_letters + string.digits + String.puncturation
а также Random.Choice ()
для данной указанной длины, как показано ниже.
import random import string def generateRandomStrongPassword(length): # Generate random strong password letters = string.ascii_letters + string.digits + string.punctuation result_str = ''.join(random.choice(letters) for i in range(length)) print("Strong Password of length", length, "is:", result_str) generateRandomStrongPassword(12) # Output # Strong Password of length 12 is: Au}h]D=aJ~QN
Примечание – Random.Choice ()
можно повторить символы. Если вы не хотите повторять символы, затем используйте Random.sample ()
метод.
Генерировать случайный сильный пароль, используя модуль секретов
Если вы ищете безопасный и надежный пароль, Python имеет модуль, называемый AS Секреты
, и вы можете использовать это для создания случайного защищенного пароля. Алгоритм, используемый секретами, менее предсказуемым по сравнению с поколением случайных строковых модулей.
import secrets import string def generateRandomCryptoPassword(length): # Generate random password using cryptographic way letters = string.ascii_lowercase + string.digits + string.punctuation result_str = ''.join(secrets.choice(letters) for i in range(length)) print("Strong Password using Crpyto of length", length, "is:", result_str) generateRandomCryptoPassword(12) # Output # Strong Password using Crpyto of length 12 is: ^6cg1(d^o/~(
Примечание: Этот модуль отлично работает с Python 3.6 и выше.
Пост Как генерировать случайную строку данной длины в Python? появился первым на INSMYCODE Отказ
Оригинал: “https://dev.to/itsmycode/how-to-generate-a-random-string-of-a-given-length-in-python-54i1”