dserlf
Новичок
- Статус
- offline
- Регистрация
- 18.05.2018
- Сообщения
- 23
- Репутация
- 9
Приветствую всех в этот чудесный летний денек (+7 на улице).
Написал себе консольный генератор паролей на питоне, делюсь своим детищем с вами. Сообщите мне, если у вас за место русских букв в консоли будет непонятная белиберда, переделаю все на латинице.
Если вы найдете какие-нибудь ошибки в моем коде, милости прошу потыкать меня в них носом :)
Ссылка на проект на github: https://github.com/dserlf/pasgen
Написал себе консольный генератор паролей на питоне, делюсь своим детищем с вами. Сообщите мне, если у вас за место русских букв в консоли будет непонятная белиберда, переделаю все на латинице.
Код:
#========================
# |
# pasgen v1.0 |
# Made by dserlf |
# |
#========================
import string, sys, random
class passGenerator():
def __init__(self):
self.list_nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
self.list_az = []
self.list_AZ = []
self.list_procent = ['%', '*', ')','?', '@', '#', '$', '~']
self.list_init = []
self.password = ''
self.line = '======================================================'
def print_hello(self):
print('Добро пожаловать в pasgen 1.0!\n'
'[?] Как использовать: pasgen.py [аргументы]\n'
'[?] Список аргументов: \n'
' - AZ: латиница верхнего регистра в пароле\n'
' - az: латиница нижнего регистра в пароле\n'
' - 09: цифры\n'
' - %: использовать спецсимволы в пароле\n'
'[?] Пример использования: pasgen.py az AZ 09\n')
def generate_the_lists(self):
a = string.ascii_lowercase
for i in a:
self.list_az.append(i)
a = string.ascii_uppercase
for i in a:
self.list_AZ.append(i)
def init_the_symbols(self):
if 'az' in sys.argv[1:]:
self.list_init += self.list_az
if 'AZ' in sys.argv[1:]:
self.list_init += self.list_AZ
if '09' in sys.argv[1:]:
self.list_init += self.list_nums
if '%' in sys.argv[1:]:
self.list_init += self.list_procent
def generate_the_pass(self):
self.max = int(input('Сколько символов должно быть в пароле: '))
for i in range(0, self.max):
self.rand = random.randint(1, len(self.list_init))
self.password += str(self.list_init[self.rand])
print(self.line)
print('Результат: ' + self.password)
print(self.line)
try:
run = passGenerator()
run.print_hello()
run.generate_the_lists()
run.init_the_symbols()
run.generate_the_pass()
except:
print('Что-то пошло не так, как планировалось.')
sys.exit()
Если вы найдете какие-нибудь ошибки в моем коде, милости прошу потыкать меня в них носом :)
Ссылка на проект на github: https://github.com/dserlf/pasgen