Как сохранить вывод из списка манипулирования в переменную - PullRequest
1 голос
/ 01 апреля 2019

Попытка написать программу, которая генерирует случайный pw и сохраняет эту информацию в переменной, которую можно использовать для заполнения базы данных mysql.

Я могу сгенерировать случайный пароль, но изо всех сил пытаюсь выяснить, как сохранить эту информацию в переменной.

Вот код генерации пароля:

import random
from random import randint
import string

letters = (list(string.hexdigits + '!@#$%^&*_'))
word = []
length = randint(8, 16) 

for i in range(1, length):
    char = random.choice(letters)
    word.append(char)
for x in range(len(word)):
    print(word[x], end = '') 

Он красиво распечатывает случайно сгенерированный пароль, но я хочу сохранить его в переменной, которую можно использовать позже.Пока что ничего, что я пробовал, не сработало.

Есть ли у вас какие-либо советы о том, как этого добиться?

1 Ответ

2 голосов
/ 01 апреля 2019

Во-первых, я предполагаю, что вам нужно сгенерировать пароль длиной length, поэтому в этом случае вы неправильно используете функцию range. Это можно исправить, просто изменив range(1, length) на range(length).

Как вы уже сказали, пароль генерируется правильно в списке word, так что теперь вам просто нужно объединить элементы этого списка и сохранить результат в переменной, назовем его generated_password:

generated_password = ''.join(word)

Кроме того, вы также можете упростить свой код, используя следующее:

generated_password = ''.join(random.choice(letters) for _ in range(length))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...