"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment convertir des chaînes en binaire en Python : ASCII vs Unicode ?

Comment convertir des chaînes en binaire en Python : ASCII vs Unicode ?

Publié le 2024-11-07
Parcourir:113

How to Convert Strings to Binary in Python: ASCII vs. Unicode?

Conversion de chaînes en binaire en Python

En Python, vous pouvez rencontrer le besoin de représenter une chaîne sous la forme d'une séquence de chiffres binaires. Cela peut être utile pour diverses raisons, telles que le cryptage des données ou la manipulation de fichiers binaires.

Utiliser la fonction bin()

Le moyen le plus simple de convertir une chaîne en binaire consiste à utiliser la fonction bin(). Cette fonction prend une chaîne en entrée et renvoie sa représentation binaire sous forme de chaîne. Par exemple :

st = "hello world"
binary_representation = bin(st)
print(binary_representation)

Cela affichera :

0b1101000 1100101 1101100 1101100 1101111 100000 1110111 1101111 1110010 1101100 1100100

Cependant, il est important de noter que la fonction bin() convertit la chaîne en une représentation binaire de ses points de code Unicode, et non de ses codes ASCII.

Utilisation de la classe bytearray

Si vous souhaitez convertir une chaîne en son ASCII représentation binaire, vous pouvez utiliser la classe bytearray. Voici un exemple :

st = "hello world"
ascii_binary_representation = ' '.join(format(x, 'b') for x in bytearray(st, 'utf-8'))
print(ascii_binary_representation)

Ceci affichera :

1101000 1100101 1101100 1101100 1101111 100000 1110111 1101111 1110010 1101100 1100100
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3