NSI,2024-2025, codage des caractères en informatique

Proposition de correction :

def conversion_minuscules(texte):
    '''
    convertit les lettres majuscules d'un texte en minuscules
    texte : str
    return : str
    >>> a="M NSI, 59000 Lille."
    >>> conversion_minuscules(a)
    "m nsi, 59000 lille."
    '''
    texte_retour=""
    for lettre in texte:
        ordre_lettre=ord(lettre)
        if ( 65 <= ordre_lettre <= 90 ):
            texte_retour+=chr(ord(lettre)+32)
        else :
            texte_retour+=chr( ordre_lettre )
    return texte_retour

def conversion_minuscules(texte):
    texte_retour=""
    for lettre in texte:
        ordre_lettre=ord(lettre)
        if (97 <=ordre_lettre <= 122 ):
            texte_retour+=chr(ord(lettre)-32)
        else :
            texte_retour+=chr( ordre_lettre )
    return texte_retour
        
def presence_majuscules(texte):
    for lettre in texte:
        ordre_lettre=ord(lettre)
        if ( 65 <= ordre_lettre <= 90 ):
            return True
    return False

def presence_minuscules(texte):
    for lettre in texte:
        ordre_lettre=ord(lettre)
        if ( 97 <= ordre_lettre <= 122 ):
            return True
    return False

def presence_chiffres(texte):
    for lettre in texte:
        ordre_lettre=ord(lettre)
        if ( 48 <= ordre_lettre <= 57 ):
            return True
    return False
    
def presence_caracteres_speciaux1(texte):
    for lettre in texte:
        if not(presence_majuscules(lettre)) and not(presence_minuscules(lettre)) and not(presence_chiffres(lettre)):
            return True
    return False
    

def presence_caracteres_speciaux2(texte):
    for lettre in texte:
        if not(presence_majuscules(lettre)):
            if not(presence_minuscules(lettre)):
                if not(presence_chiffres(lettre)):
                    return True
    return False
    
def mdp_secure(texte):
    if len(texte)>=8:
        if presence_minuscules(texte):
            if presence_majuscules(texte):
                if presence_chiffres(texte):
                    if presence_caracteres_speciaux2(texte):
                        return True