Wie können Sie in Python überprüfen, ob eine Zeichenfolge sowohl Groß- als auch Kleinbuchstaben enthält?

Ashton

Ich habe mir den anderen Beitrag angesehen, der meiner Frage " Passwortprüfung - Python 3" ähnelt , außer dass bei meiner Frage geprüft wird, ob das Passwort sowohl Fragen in Groß- als auch in Kleinbuchstaben enthält. Mein Code lautet wie folgt, aber wenn er ausgeführt wird, erkennt er nicht, dass sowohl Klein- als auch Großbuchstaben im Kennwort enthalten sind, und erkennt nur einen Typ. Wie würde ich es schaffen, beide Typen zu erkennen? Gibt es auch eine einfachere Möglichkeit, den Code überprüfen zu lassen, ob alle diese Werte auftreten, ohne dass für jeden einzelnen Schritt Funktionen erstellt werden müssen?

def Get_Password():
    return input("Enter your desired password: ")

def Count_Digits(password):
    return sum(character.isdigit() for character in password)

def Valid_password_length(password):
    if len(password) >= 10:
        return ('step1' == True)
    else:
        return ('step1' == False, print("Invalid password: too short"))

def Valid_password_characters(password):
    if password.isalnum():
        return ('step2' == True)
    else:
        return ('step2' == False, print("Invalid password: illegal character detected"))

def Valid_password_numdigit(password):
    if Count_Digits(password) >= 2:
        return ('step3' == True)
    else:
        return ('step3' == False, print("Invalid password: Must have at least 2 digits"))

def Valid_password_lowercase(password):
    for i in (password):
        if i.islower() == True:
            return ('step4' == True)
        else:
            return ('step4' == False, print("Invalid password: No lowercase characters detected"))

def Valid_password_uppercase(password):
    for i in (password):
        if i.isupper() == True:
            return ('step5' == True)
        else:
            return ('step5' == False, print("Invalid password: No uppercase characters detected"))

def password_checker():
    password = Get_Password()
    Valid_password_length(password)
    Valid_password_characters(password)
    Valid_password_numdigit(password)
    Valid_password_lowercase(password)
    Valid_password_uppercase(password)

    if 'step1' and 'step2' and 'step3' and 'step4' and 'step5' == True:
        print("Congratulations! This password is valid")

password_checker()
cdlane
import sys

def Valid_password_mixed_case(password):
    letters = set(password)
    mixed = any(letter.islower() for letter in letters) and any(letter.isupper() for letter in letters)
    if not mixed:
        print("Invalid password: Mixed case characters not detected", file=sys.stderr)
    return mixed

Eine Komplettlösung:

import sys

def Get_Password():
    return input("Enter your desired password: ")

def Count_Digits(password):
    return sum(1 for character in password if character.isdigit())

def Valid_password_length(password):
    correct_length = len(password) >= 10

    if not correct_length:
        print("Invalid password: too short", file=sys.stderr)

    return correct_length

def Valid_password_characters(password):
    correct_characters = password.isalnum()

    if not correct_characters:
        print("Invalid password: illegal character detected", file=sys.stderr)

    return correct_characters

def Valid_password_numdigit(password):
    sufficient_digits = Count_Digits(password) >= 2

    if not sufficient_digits:
        print("Invalid password: Must have at least 2 digits", file=sys.stderr)

    return sufficient_digits

def Valid_password_mixed_case(password):
    letters = set(password)

    lower = any(letter.islower() for letter in letters)
    upper = any(letter.isupper() for letter in letters)

    if not upper:
        print("Invalid password: No uppercase characters detected", file=sys.stderr)

    if not lower:
        print("Invalid password: No lowercase characters detected", file=sys.stderr)

    return lower and upper

def password_checker():
    password = Get_Password()
    if Valid_password_length(password) and \
        Valid_password_characters(password) and \
        Valid_password_numdigit(password) and \
        Valid_password_mixed_case(password):

        print("Congratulations! This password is valid")

password_checker()

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

TOP Liste

heißlabel

Archiv