Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 29.02.2020
Сообщений: 6
1

Проверка паролей

10.10.2020, 10:52. Показов 254. Ответов 1

Надо было сделать проверку пароля по степени его сложности. Проверка делалась по следующим критериям:
Символы, используемые при вводе пароля, можно поделить на следующие группы:
1. строчные латинские символы
2. прописные латинские символы
3. цифры
4. разрешённые спец-символы:
!@#$%^&*()?_+-=
В зависимости от того, из скольки разных групп использовались символы, определяется
сложность пароля:

• 1 группа: very weak
• 2 группы: weak
• 3 группы: strong
• 4 группы: very strong
В итоге у меня получилось что-то такое:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
a = 0
s = input('Введите пароль ')
 
for i in s:
    if i in ['@', '#', '%', '&','^', '!', '$', '*' ,'(', ')','?' ,'_' ,'+' ,'-' ,'=' ]:
            a += 1
            continue
    elif i.isupper():
            a += 1
            continue
    elif i.isdigit():
            a += 1
            continue
    elif i.islower():
            a += 1
            break
 
if a < 1:
    print('very weak')
elif a < 2:
    print('weak')
elif a < 3:
    print('strong')
elif a < 4:
    print('very strong')
Но почему-то если он находит по несколько символов одной группы, то начинает прибавлять в зависимости кол-ва символов из группы.
Помогите пожалуйста. Мне надо чтобы при нахождении символа из определенной группы он прибавлял единицу и переходил к следующей группе.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.10.2020, 10:52
Ответы с готовыми решениями:

Генератор паролей
Подскажите, что не так в коде (программа вылетает из компилятора и всё) # -*- coding: utf-8 -*-...

Генерация паролей
Требуется по запросу выдавать N различных паролей длиной M символов, состоящих из строчных и...

Генератор паролей
Требуется по запросу выдавать N различных паролей длиной M символов, состоящих из строчных и...

Генерация паролей
Требуется по запросу выдавать N различных паролей длиной M символов, состоящих из строчных...

__________________

Записывайтесь на профессиональные курсы Fullstack-разработчиков на Python
1
Автоматизируй это!
Эксперт Python
4198 / 2881 / 854
Регистрация: 30.03.2015
Сообщений: 9,320
Записей в блоге: 15
10.10.2020, 10:58 2
Цитата Сообщение от skiyman Посмотреть сообщение
почему-то
как это почему то? потому что ты так написал
Цитата Сообщение от skiyman Посмотреть сообщение
a += 1
Цитата Сообщение от skiyman Посмотреть сообщение
при нахождении символа из определенной группы он прибавлял единицу и переходил к следующей группе.
ну создай скажем список булин из 4 элементов, по 1 на каждую группу, все равны False. Проходя по символам и встречая элемент группы превращай его булин элемент в True в финале просто сложи количество True
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.10.2020, 10:58

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Много паролей
Привет, как внести в правильные пароли множество значений(8 строчка)? Через or не получается, он...

Генератор паролей
Всем Здравствуйте , не могли бы вы засунуть мой генератор паролей в класс , заранее спасибо ...

Сравнение введенных паролей
Здравствуйте недавно начал изучать питон и вот в чём проблема код полностью правильный:...

Продвинутый генератор паролей
Имеется код: import random small_engl_alphabet = big_engl_alphabet = numbers = ...

Простой генератор паролей
Здравствуйте! Решил написать простой генератор паролей, и вроде всё норм, но иногда после ввода...

Генерация паролей, проблема с выводом
Есть код, но ругается на вывод. Ошибка Traceback (most recent call last): File &quot;test.py&quot;,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.