Comment Convertir un texte en son équivalent binaire?
Résolu/Fermé
Inariuss
Messages postés
7
Date d'inscription
samedi 19 octobre 2013
Statut
Membre
Dernière intervention
10 juillet 2014
-
19 oct. 2013 à 11:33
maxitruc Messages postés 1 Date d'inscription mercredi 10 juin 2015 Statut Membre Dernière intervention 10 juin 2015 - 10 juin 2015 à 19:02
maxitruc Messages postés 1 Date d'inscription mercredi 10 juin 2015 Statut Membre Dernière intervention 10 juin 2015 - 10 juin 2015 à 19:02
A voir également:
- Alphabet binaire
- Lettre b en binaire - Meilleures réponses
- Alphabet binaire convertisseur - Meilleures réponses
- Code ascii alphabet - Guide
- Codage binaire - Guide
- Conversion de l'alphabet en binaire ✓ - Forum Programmation
- Alphabet binaire - Forum Programmation
- Codage de caractère en binaire ✓ - Forum Programmation
5 réponses
Utilisateur anonyme
Modifié par fred1599 le 20/10/2013 à 10:22
Modifié par fred1599 le 20/10/2013 à 10:22
Ok, il y a une fonction existante nommée bin(num) où num est la valeur décimale de ton caractère.
Seulement pour avoir la valeur décimale, tu dois utiliser une autre fonction nommée ord(letter) où letter est ta lettre.
On voit que le petit b dans le résultat est de trop, il faut le virer
J'utilise une méthode nommée le slicing
Il faut ajouter le '0' en début de ligne
Maintenant pour chaque lettre de ta chaîne de caractères une boucle for fera tout simplement l'affaire
Bonne continuation...
Seulement pour avoir la valeur décimale, tu dois utiliser une autre fonction nommée ord(letter) où letter est ta lettre.
>>> ord("B")
66
>>> bin(ord("B"))
'0b1000010'
On voit que le petit b dans le résultat est de trop, il faut le virer
J'utilise une méthode nommée le slicing
>>> bin(ord("B"))[2:]
'1000010'
Il faut ajouter le '0' en début de ligne
>>> '0' + bin(ord("B"))[2:]
'01000010'
Maintenant pour chaque lettre de ta chaîne de caractères une boucle for fera tout simplement l'affaire
>>> for char in "Bonjour":
... print('0' + bin(ord(char))[2:])
...
01000010
01101111
01101110
01101010
01101111
01110101
01110010
Bonne continuation...