Vene4ka
@Vene4ka
Учусь программировать :>

Как сгенерировать 10 паролей и всех их вывести?

Приветик!
У меня как всегда траблы.

У меня есть следующий код, который генерирует ключи доступа:
def GenerateKey():
    chars = 'abcdefghijklnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890' #Символы из которых генерируем ключ
    for n in range(10):
        password =''
        for i in range(16):
            password += random.choice(chars)
        return password

Но есть проблема, функция возвращет только последний ключ.
Как бы мне сделать так, что бы она возвращала допустим 10 переменных с этими ключами?

Все ключи нужно вывести в боте и занести в бд.
Помогите пожалуйста <3
  • Вопрос задан
  • 134 просмотра
Решения вопроса 4
SoreMix
@SoreMix
yellow
Либо делать список с паролями и вернуть сразу список, либо yield
Ответ написан
GavriKos
@GavriKos
Ну два варианта:
- возвращать массив (список) паролей
- функция должна возвращать один пароль, но функцию надо вызвать 10 раз.

Лучше второй вариант
Ответ написан
phaggi
@phaggi
лужу, паяю, ЭВМы починяю
Надо либо внутри функции GenerateKey генерировать список и возвращать return-ом этот список с паролями, либо убрать из функции цикл с десятком повторений и просто десять раз вызывать функцию, и получишь десять паролей по-одному.
Ответ написан
aRegius
@aRegius
Python Enthusiast
import string
from random import choices

chars = string.ascii_letters + string.digits
passwords = [''.join(choices(chars, k=16)) for _ in range(10)]
print(*passwords, sep='\n')
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы