Python

barbara_aigle

Les différents types de données


n = 7
pi = 3.14159
msg = "Quoi de neuf ?"
b = True
a = 2 + 3j
liste = ['Pierre', 59, 1.72]
tuple = ('Département', '37', 96875)
dico = {'nom':'Pierre', 'age':59, 'taille':1.72}
ensemble = {'Pierre', 59, 1.72}


n est de type int : tout entier positif ou négatif
pi est de type float : nombre décimal
msg est de type str : chaîne de caractères
b est de type bool : booléen
a est de type complex où j représente la partie imaginaire du nombre
liste est de type list : assimilable à un tableau
tuple est de type tuple : assimilable à une liste sauf qu'un tuple n'est pas modifiable
dico est de type dict : assimilable à un tableau associatif
ensemble est de type set : collection non ordonnée, immuable, sans index ni doublon


Cas particulier du type bytes

chaine = "Amélie et Eugène\n"
monfic = open("test.txt", 'w')
monfic.write(chaine)
monfic.close()

monfic = open("test.txt", 'rb')
chainebin_lu = monfic.read()
monfic.close()
print(type(chainebin_lu))

print(chainebin_lu)

for octet in chainebin_lu:
    print(octet, end=' ')

binascii = b'Amelie et Eugene'

# la chaine contient des caractères non-ASCII : é è \n




# ouverture du fichier en mode binaire


# la chaine retournée par la méthode read() est de type bytes

# les caractères non-ASCII sont encodés sur deux octets (ex.: é = c3)

# la chaine est lue élément par élément
# elle est restituée en notation décimale : 65 109 195 169 108 105 ...

# stocke une chaine strictement ASCII dans une variable de type bytes

Conversion d'une chaine bytes en string

conv_to_string = chainebin_lu.decode('utf8')
print(type(conv_to_string), conv_to_string)

# utf8 est la norme la plus utilisée aujourd’hui
# retourne le type str avec 'Amélie et Eugène'

Conversion d'une chaine string en bytes

chaine = 'Bonnes fêtes de Noël'
conv_to_utf8 = chaine.encode('utf8')
conv_to_latin1 = chaine.encode('latin-1')
print(type(conv_to_utf8), conv_to_utf8)
print(type(conv_to_latin1), conv_to_latin1)


# encode à la norme utf8
# encode à la norme Latin-1
# retourne le type bytes avec 'Bonnes f\xc3\xaates de No\xc3\xabl'
# retourne le type bytes avec 'Bonnes f\xeates de No\xebl'

(c) BS 2025 - tous droits réservés
Contactez-nous