Загрузка данных


Тренажер кода
Название задания: Фильтрация «слитых» паролей по алгоритму

Условие задания:

Дан список «слитых» паролей. Нужно отфильтровать слабые пароли.

Критерии «слабого» пароля:

длина менее 8 символов;

состоит только из цифр;

содержит слово 'password' или '1234'.

Поиск password выполняется без учёта регистра.

 Задача: напишите функцию filter_strong(passwords), которая:

принимает список строк;

возвращает список только «сильных» паролей;

использует цикл и условия (без модуля re).

Пример вывода:

filter_strong(['qwerty', '1234567890', 'MyStr0ng!Pass', 'password123']) →
['MyStr0ng!Pass']

Проверяется:

 Функция называется filter_strong(passwords)

 Корректно отсекает пароли короче 8 символов

 Корректно отсекает пароли, состоящие только из цифр

 Корректно отсекает пароли со словом 'password' или '1234'

Критерии оценки:

Правильность фильтрации по всем трём критериям слабости

Использование цикла и условий без regex

Корректный возврат списка «сильных» паролей

Код программы:
# Создайте функцию filter_strong(passwords).
def filter_strong(passwords):
    # Создайте пустой список для хранения сильных паролей.
    # Переберите все пароли из переданного списка.
    # Проверьте длину каждого пароля.
    # Проверьте, состоит ли пароль только из цифр.
    # Проверьте, содержит ли пароль слово 'password' без учёта регистра
    # или последовательность '1234'.
    # Если пароль не подходит ни под один критерий слабого пароля,
    # добавьте его в список сильных паролей.
    # Верните список сильных паролей.

leaks = ['qwerty', '1234567890', 'MyStr0ng!Pass', 'password123']
print(filter_strong(leaks))  # ['MyStr0ng!Pass']