[PYTHON] Convertir une chaîne hexadécimale en binaire

Convertir une chaîne hexadécimale en binaire et écrire dans un fichier binaire

** [Méthode 1] Utilisez to_bytes () ** Parce que vous voudrez peut-être changer l'endian Exécutez dans l'ordre chaîne de caractères → int → octets (binaire).

str_to_bin.py


moji = '01020304'
suuchi = int(moji,16)

bytes_big = suuchi.to_bytes(4, byteorder='big')
bytes_little = suuchi.to_bytes(4, byteorder='little')

print(bytes_big)
print(bytes_little)

wf = open('write_test.bin', 'wb')
wf.write(bytes_big)
wf.write(bytes_little)

** résultat d'impression **

16909060
b'\x01\x02\x03\x04'
b'\x04\x03\x02\x01'

** [Méthode 2] ** Exécutez dans l'ordre chaîne de caractères → int → octets (binaire). Puisque to_bytes () ne peut être utilisé qu'avec python3, utilisez struct.

str_to_bin_2.py


import struct

moji = '01020304'
suuchi = int(moji,16)

bytes_big =struct.pack(">L",suuchi)
bytes_little =struct.pack("<L",suuchi)

** [Méthode 3] ** Si vous ne souhaitez pas convertir en endian, vous pouvez convertir une chaîne de caractères en octets (binaire) ci-dessous.

str_to_bin_3.py


moji = '01020304'
moji_bin = binascii.unhexlify(moji)

Lien de référence ci-dessous

[Gestion des nombres hexadécimaux en Python](http://kaworu.jpn.org/python/Python%E3%81%A716%E9%80%B2%E6%95%B0%E3%82%92%E6%89 % B1% E3% 81% 86) Python | 2 complément (signé) int ⇔ octets ⇔ str (chaîne de caractères hexagonaux) Numérique-> Binaire-> Chaîne hexagonale-> Binaire-> Convertir en numérique en Python.

[7.1. Struct - Interpréter une chaîne d'octets comme des données binaires compactées] (https://docs.python.jp/3/library/struct.html) 19.8. Binascii - Conversion entre données binaires et données ASCII

Recommended Posts

Convertir une chaîne hexadécimale en binaire
[python] Convertir la date en chaîne
[Python] Convertit les nombres décimaux en nombres binaires, octaux et hexadécimaux
Convertir un fichier texte avec des valeurs hexadécimales en fichier binaire
Convertir une chaîne en image
Convertir en HSV
Convertir (compresser) une chaîne de caractères JSON formatée en JSON 1 ligne
Convertir le fichier FBX en ASCII <-> BINARY en Python
Convertir les packages binaires pour Windows au format roue
Convertir 202003 en 2020-03 avec les pandas
Convertir les kanji en kana
Convertir jupyter en py
Conversion entre chaîne hexadécimale et chaîne
Convertir keras-yolo3 en ONNX
Convertir dict en tableau
Convertir json en Excel
Comment convertir / restaurer une chaîne avec [] en python
Comment convertir des nombres à virgule flottante en nombres binaires en Python
C> Convertir décimal en hexadécimal> Ne pas utiliser sprintf ()
Convertir numpy int64 en python int
[Python] Convertir la liste en Pandas [Pandas]
Convertir le HTML en fichier texte
Convertir le projet Scratch en Python
[Python] Convertir Shift_JIS en UTF-8
Convertir l'adresse IP en décimal
Je souhaite convertir une chaîne de caractères ISO-8601 en heure japonaise
Convertissez rapidement SDF en CSV
[Caffe] Convertit le fichier moyen du format proto binaire au format npy
Convertir le fichier genbank en fichier gff
Convertir le code python 3.x en python 2.x
Convertir en chaîne lors de la sortie de la sortie standard avec le sous-processus Python
Lisez le binaire big endian en Python et convertissez-le en ndarray
Convertir l'objet Statut Tweepy en JSON
Convertir .ipynb en .html (avec BatchFile)
Fonction pour convertir des colonnes Excel en nombres
Convertir un PDF en documents par OCR
Convertir Markdown en PDF en Python
Convertir un PDF A4 en A3 toutes les 2 pages
Convertir WMA en MP3 sur Mac
Convertir une partie du nom japonais en synonyme
convertir un graphique basé sur ggplot en html
Workflow pour convertir une formule (image) en python
Convertir la liste en DataFrame avec python
Convertir des phrases en vecteurs avec gensim
Comment convertir 0,5 en 1056964608 en un seul coup
Python> liste> Convertir une double liste en une seule liste
Conversion de pdf en txt 2 [pyocr]
Comment convertir le modèle Tensorflow en Lite
6 façons d'enchaîner des objets en Python
[Python] Convertit les nombres naturels en nombres ordinaux
Convertir décimal en n-aire [python]
Méthode de conversion efficace en chaîne d'octets
Programme pour convertir le japonais en nom de station
Comment convertir .mgz en .nii.gz
Convertir un PDF en image avec ImageMagick
Outil pour convertir la configuration Juniper
Python> tuple> Convertir un double tuple en un seul tuple
J'ai essayé de créer un programme qui convertit les nombres hexadécimaux en nombres décimaux avec python
Remarque: [Python3] Convertissez datetime en chaîne dans le format de votre choix
Mayungo's Python Learning Episode 6: J'ai essayé de convertir une chaîne de caractères en nombre