Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Données None et Binaires | Interactions Entre Types
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Types de Données en Python

bookDonnées None et Binaires

Les programmes réels gèrent les valeurs manquantes et les données binaires. Utiliser None pour indiquer « aucune valeur » et bytes/bytearray pour le contenu binaire brut. Savoir quand chaque type est approprié et comment convertir en toute sécurité entre texte et octets.

None pour « Aucune valeur »

None est un objet unique signifiant « rien ici ».

1234567
result = None email = None print(result is None) # True print(email is None) # True if result is None: print("No result yet")
copy

Utiliser is None au lieu de vérifications de véracité, car 0 et "" sont également considérés comme faux.

123
value = 0 print(not value) # True print(value is None) # False
copy

Valeurs par défaut et solutions de repli

1234567
x = None print(x or "unknown") # 'unknown' print("unknown" if x is None else x) x = 0 print(x or "unknown") # 'unknown' (maybe wrong) print("unknown" if x is None else x) # 0
copy

Fonctions et paramètres

1234567
def add_tag(text, tag=None): if tag is None: tag = "general" return f"[{tag}] {text}" print(add_tag("hello")) # [general] hello print(add_tag("hello", "news")) # [news] hello
copy

bytes et bytearray pour les données binaires

str contient du texte, bytes et bytearray contiennent des valeurs brutes d'octets.

1234
b1 = b"hello" b2 = bytes([72, 105]) buf = bytearray(b"abc") buf[0] = 65
copy

Encodage et décodage

UTF-8 est un encodage de texte qui convertit les caractères en octets afin qu'ils puissent être stockés et transmis. Il prend en charge tous les caractères Unicode tout en restant compatible avec ASCII.

123
text = "café" data = text.encode("utf-8") back = data.decode("utf-8")
copy

Mélange de texte et d'octets

123456
try: b"ID:" + "123" except TypeError as e: print(e) ok = b"ID:" + "123".encode("utf-8")
copy

Différences de longueur

123
ch = "é" len(ch) # 1 len(ch.encode()) # 2
copy

Fichiers

# with open("example.png", "rb") as f:
#     blob = f.read()
question mark

Quelle vérification détecte correctement une valeur manquante ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 3

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you explain when to use None versus an empty string or zero?

How do I safely convert between bytes and strings in Python?

What are common mistakes to avoid when working with None and binary data?

bookDonnées None et Binaires

Glissez pour afficher le menu

Les programmes réels gèrent les valeurs manquantes et les données binaires. Utiliser None pour indiquer « aucune valeur » et bytes/bytearray pour le contenu binaire brut. Savoir quand chaque type est approprié et comment convertir en toute sécurité entre texte et octets.

None pour « Aucune valeur »

None est un objet unique signifiant « rien ici ».

1234567
result = None email = None print(result is None) # True print(email is None) # True if result is None: print("No result yet")
copy

Utiliser is None au lieu de vérifications de véracité, car 0 et "" sont également considérés comme faux.

123
value = 0 print(not value) # True print(value is None) # False
copy

Valeurs par défaut et solutions de repli

1234567
x = None print(x or "unknown") # 'unknown' print("unknown" if x is None else x) x = 0 print(x or "unknown") # 'unknown' (maybe wrong) print("unknown" if x is None else x) # 0
copy

Fonctions et paramètres

1234567
def add_tag(text, tag=None): if tag is None: tag = "general" return f"[{tag}] {text}" print(add_tag("hello")) # [general] hello print(add_tag("hello", "news")) # [news] hello
copy

bytes et bytearray pour les données binaires

str contient du texte, bytes et bytearray contiennent des valeurs brutes d'octets.

1234
b1 = b"hello" b2 = bytes([72, 105]) buf = bytearray(b"abc") buf[0] = 65
copy

Encodage et décodage

UTF-8 est un encodage de texte qui convertit les caractères en octets afin qu'ils puissent être stockés et transmis. Il prend en charge tous les caractères Unicode tout en restant compatible avec ASCII.

123
text = "café" data = text.encode("utf-8") back = data.decode("utf-8")
copy

Mélange de texte et d'octets

123456
try: b"ID:" + "123" except TypeError as e: print(e) ok = b"ID:" + "123".encode("utf-8")
copy

Différences de longueur

123
ch = "é" len(ch) # 1 len(ch.encode()) # 2
copy

Fichiers

# with open("example.png", "rb") as f:
#     blob = f.read()
question mark

Quelle vérification détecte correctement une valeur manquante ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 3
some-alt