Найти - Пользователи
Полная версия: Ошибка в Генераторе Паролей
Начало » Центр помощи » Ошибка в Генераторе Паролей
1
Kw1t3
Здравствуйте! Решил написать простой генератор паролей, и вроде всё норм, но иногда после ввода количества символов выдаёт ошибку(при этом одно и тоже число может то выдавать, то не выдавать ошибку) Надеюсь, что понятно обьяснил.

 import random
lwrs = "qwertyuiopasdfghjkklzxcvbnm"
nmbs = "1234567890"
res = lwrs + nmbs + lwrs.upper()
password = ""
#Знакомство
print("////////////////////////////////////////////////////////////////////////")
print('')
print('Привет, Я - Генератор Надёжных Паролей! А Как Зовут Тебя?')
print('')
name = str(input("Введи Своё Имя: "))
print('')
print("////////////////////////////////////////////////////////////////////////")
#Генерация пароля
print('')
nmb = int(input("Количество Символов: "))
print('')
for i in range(nmb):
    symbol = res[random.randint(0, (len(res)))]
    password += symbol
#Вывод пароля
print("////////////////////////////////////////////////////////////////////////")
print('')
print(f"{name}, Это - Твой Новый Надёжный Пароль: {password}")
print('')
print("////////////////////////////////////////////////////////////////////////")
print('')
input('Нажми Enter Для Выхода')
print('')
print("////////////////////////////////////////////////////////////////////////")

Текст ошибки:

Traceback (most recent call last):
File “C:\Users\block\Desktop\password generator.py”, line 23, in <module>
symbol = res
IndexError: string index out of range
Romissevd
 symbol = chrs[random.randint(0, (len(chrs)))]
Здесь, как один из многочисленных вариантов, можно от длины строки отнять 1, т.к. рандомно может вернуться число равное длине, при этом индекса такого нет (исходя из того что отсчет начинается от 0 и до длины строки - 1)
 >>> a = 'abc'
>>> len(a)
3
>>> a[3]
Traceback (most recent call last):
  File "<input>", line 1, in <module>
IndexError: string index out of range
Kw1t3
Romissevd
Спасибо, я тупонул)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB