Найти - Пользователи
Полная версия: Проверка пароля
Начало » Центр помощи » Проверка пароля
1 2
alex28746
Добрый вечер. Подскажите пожалуйста вот с такой задачей. Написать функцию которая проверяет или пароль подходит под требования безопасности или нет. В конце должна возвращать: True если удовлетворяет и False соответственно если нет. Пароль удовлетворяет требование безопасности в том случае если длина его не меньше чем 6 символов, так же должна присутствовать минимум одна заглавная буква, и одна малая буква.
def prowerka(data):
    a = len(data)
    if a > 10 and data.isdigit and data.islower and data.isupper:            
        return True
    else:
        return False

Подскажите что не так, почему условия data.islower и data.isupper не проверяются? Заранее спасибо за помощь.
ajib6ept
In [1]: data = 'python'
In [2]: data.isdigit
Out[2]: <function isdigit>
In [3]: data.isdigit()
Out[3]: False
alex28746
def prowerka(data):
    a = len(data)
    if a > 10:
        for i in data:
            if i.isupper() and i.islower() == True:                
                return "a"
            
        else:
            return False
теперь False постоянно выдает
ajib6ept
isupper() и islower() (для обного символа) взаимоисключающие понятия, регистр не может быть и верхний и нижний, он либо верхний, либо нижний, поэтому пятая строчку не бывает True
alex28746
тогда как проверить эти два условия?
terabayt
def f(s, op):
    return any(op(i) for i in s)
def prowerka(passwd):
    return len(passwd) > 5 and f(passwd, str.islower) and f(passwd, str.upper)
alex28746
[code python]password = ('a1213aafksfsads')[/code]
А почему при таком значении пароля выдает True?
terabayt
alex28746
А почему при таком значении пароля выдает True?
потому что я случайно написал не isupper а upper :)
    return len(passwd) > 5 and f(passwd, str.islower) and f(passwd, str.isupper)
alex28746
а не мог бы пояснить пожалуйста что делает первая функция? )
terabayt
alex28746
а не мог бы пояснить пожалуйста что делает первая функция? )
any
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