chaînes de caractères
  • string
  • METHODES
  • formatage des nombres
  • Affichage des nombres
  • STRING

    Un programme peut manipuler des caractères alphabétiques, des mots, des phrases, ou des suites de symboles quelconques, il existe pour cet usage des structures de données particulières que l’on appelle « chaînes de caractères ».

    Une donnée de type string peut se définir comme une suite quelconque de caractères.

    # 0305 acces string.py

    # acces individuel

    print("exemple 5 :")

    ch= "Christian"

    print("la chaîne est" ,ch)

    print (ch[0],ch[3],ch[5])

    exemple 0305 :
    oui, je suis une chaîne de caractères
    
    Opérations élémentaires sur les chaînes
    • assembler plusieurs petites chaînes pour en construire de plus grandes avec le signe +. (ligne 7)
    • déterminer la longueur d’une chaîne avec la fonction len ( ).*( ligne 9)*
    • convertir en nombre véritable une chaîne de caractères qui représente un nombre avec la fonction int( ).*(lignes 11 et 13)*

    # 0370 longueur string.py

    #type de données

    a = "Petit poisson"

    b = " deviendra grand"

    print(a)

    print(b)

    c = a+b

    print(c)

    print("longueur de la chaîne",len(c))

    d=input("rentrer un nombre entier :")

    dn=int(d)

    e=input( "rentrer un nombre entier :" )

    en=int(e)

    print(dn," + ",en," = ",dn+en)

    
    Petit poisson
    deviendra grand
    Petit poisson deviendra grand
    longueur de la chaîne 29
    rentrer un nombre entier :5
    rentrer un nombre entier :5
    5 + 5 = 10
    

    METHODE SUR LES CHAÏNES:

    Les chaînes de caractères sont des objets, on peut donc agir avec des fonctions associées aux chaînes.

    ch="Alice et Bob"
    
    Méthode Effet
    split()
    

    Convertit un chaîne en une liste de sous-chaînes.

    ch.split() : ['Alice', 'et', 'Bob']
    

    lower()
    

    Convertit une chaîne de caractères en minuscules.

    minuscule=ch.lower() : minuscule=" alice et bob "
    

    upper()
    

    Convertit une chaîne de caractères en majuscules.

    ch.upper() : ALICE ET BOB
    

    title()
    

    Convertit en majuscules l’initiale de chaque mot de la une chaîne de caractères.

    ch.title() : Alice Et Bob
    

    capitalize()
    

    Met en majuscule la première lettre de la chaîne.

    minuscule=" alice et bob "
    minuscule.capitalize() : Alice et bob
    

    swapcase()
    

    Convertit une chaîne de caractères en majuscules si elle est en minuscule et fait le contraire si la chaîne est en minuscules.

    MAJ=minuscule.swapcase()
    MAJ.swapcase() : alice et bob
    minuscule.swapcase() : ALICE ET BOB
    

    strip()
    

    Enlève les espaces aux début et à la fin de la chaîne.

    ch=" Alice et Bob "
    minuscule=" alice et bob "
    sans\_es=minuscule.strip() : alice et bob
    

    replace(char1,char2)
    

    Remplace char1 par char2 dans la chaîne de caractères

    ch.replace("e","\*") : Alic\* \*t Bob
    

    index(char)
    

    Donne l’indice du premier caractère char

    ch.index("o"): 10
    

    FORMATAGE DES NOMBRES:

    Conversion des chaînes de caractères en nombres :

    La fonction format() retourne des versions formatées des chaînes de caractères.

    Le Binaire :

    Conversion d’une chaîne représentant un nombre de base 10 en nombre binaire.

    _images/image28.png

    Hexadécimal :

    Conversion d’une chaîne représentant un nombre de base 10 en nombre hexadécimal.

    _images/image29.png

    Base huit :

    Conversion d’une chaîne représentant un nombre de base 10 en nombre en base huit.

    _images/image30.png

    AFFICHAGE DES NOMBRES EN CHAÎNES DE CARACTERES :

     

    #0311 formatage des nombres.py

    quotient = 1.0/8.1000000729

    print("La longueur du quotient est de  ",len(str(quotient)))

    print ("Le quotient est ",quotient)

    print(60*"*")

    format_normal = "Le quotient est {}".format(quotient)                

    # par défaut  19 espaces

    print('format_normal = "Le quotient est {}".format(quotient) ')

    print(format_normal)

    print(60*"*")

    format_float = "Le quotient est {:f}".format(quotient)

    print(' format_float = "Le quotient est {:f}".format(quotient)')

    print(format_float)

    # format decimal (float) par défaut - 7 décimales

    print(60*"*")

    format_2decimales = "Le quotient est {:.2f}".format(quotient)

    print('format_2decimales = "Le quotient est {:.2f}".format(quotient)')

    # 2 décimales

    print(60*"*")

    print(format_2decimales)

    dix = "Le quotient est {:10.2f}".format(quotient*1000000)

    print('dix = "Le quotient est {:10.2f}".format(quotient) ')

    print(' 10 signifie 7 entiers +,+ 2 décimales (7+1+2=10)')

    print('Le quotient est -------.-- ')

    print(dix)

    print(60*"*")

    dix_droit = "Le quotient {:<10.2f} est affiché à droite".format(quotient)   

    print("Justification à droite")

    print(' dix_droit = "Le quotient {:<10.2f} est affiché à droite".format(quotient)')

    print(dix_droit)

    dix_d='"Le quotient {:<10.2f} est affiché à droite".format(quotient) '

    print(' dix_droit='"Le quotient {:<10.2f} est affiché à droite".format(quotient) )

    print(60*"*")

    print(" Justification à gauche")

    dix_gauche = "Le quotient  {:>10.2f} est affiché à gauche".format(quotient)

    print(' >dix_gauche="Le quotient  {:>10.2f} est affiché à gauche".format(quotient) ')

    print("Le quotient  ------*.**")

    print( dix_gauche)    

    print(60*"*")

    print("Justification au centre")

    print(' dix_centre = "Le quotient {:^0.2f} est affiché au centre".format(quotient)  ')

    dix_centre="Le quotient {:^10.2f} est affiché au centre".format(quotient)

    print( dix_centre)

    print(60*"*")

    print("Remplissage ---")

    print(' six_plein = "Le quotient  {:*>6.2f} est affiché avec -- ".format(quotient)  ')

    six_plein="Le quotient   :->6.2f} est affiché avec --- ".format(quotient)

    print( six_plein)

    print(30*"☻☺")

    print("Remplissage ")

    sept_x = "Le quotient {:=7.2f} est affiché avec ☺".format(quotient)

    print(' sept_x="Le quotient {:=10.2f} est affiché avec ".format(quotient)')

    print( sept_x)

    Résultat :

    La longueur du quotient est de 19 Le quotient est 0.12345678901234568 ************************************************************ format_normal = "Le quotient est {}".format(quotient) Le quotient est 0.12345678901234568 ************************************************************ format_float = "Le quotient est {:f}".format(quotient) Le quotient est 0.123457 ************************************************************ format_2decimales = "Le quotient est {:.2f}".format(quotient) ************************************************************ Le quotient est 0.12 dix = "Le quotient est {:10.2f}".format(quotient) 10 signifie 7 entiers +,+ 2 décimales (7+1+2=10) Le quotient est -------.-- Le quotient est 123456.79 ************************************************************ Justification à droite dix_droit = "Le quotient {:<10.2f} est affiché à droite".format(quotient) Le quotient 0.12 est affiché à droite dix_droit=Le quotient 0.12 est affiché à droite ************************************************************ Justification à gauche dix_gauche="Le quotient {:>10.2f} est affiché à gauche".format(quotient) Le quotient ------*.** Le quotient 0.12 est affiché à gauche ************************************************************ Justification au centre dix_centre = "Le quotient {:^10.2f} est affiché au centre".format(quotient) Le quotient 0.12 est affiché au centre ************************************************************ Remplissage --- six_plein = "Le quotient {:*>6.2f} est affiché avec ---".format(quotient) Le quotient --0.12 est affiché avec --- ☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺☻☺ Remplissage ☺ sept_x="Le quotient {:☺=10.2f} est affiché avec ☺".format(quotient) Le quotient ☺☺☺0.12 est affiché avec ☺