logo

Hvordan konverteres hexadecimal til binær i python?

Det 'hex' er en forkortelse for Hexadecimal . Det er et nummereringssystem, der bruger 16 som sin base. Det er almindeligt anvendt i computere og digital elektronik, fordi det kan repræsentere en byte (8 bit) af data med kun to cifre, hvilket gør det mere kortfattet og lettere at læse end binært. I hexadecimal, cifrene 0-9 repræsenterer deres respektive værdier, mens bogstaverne A-F (eller a-f) repræsentere værdier 10-15 , henholdsvis.

udp protokol

Metode 1: Brug af bin() funktion

Konvertering af hexadecimal til binær i Python kan gøres ved hjælp af en indbygget funktion kaldet beholder() . Denne funktion tager et heltal eller en streng som input og returnerer dens binære ækvivalent.

Eksempel:

 # Define a hexadecimal string hex_string = '1A' # Convert the hexadecimal string to an integer using the base 16 hex_integer = int(hex_string, 16) # Convert the integer to binary using the bin() function binary_string = bin(hex_integer) # Remove the '0b' prefix from the binary string binary_string = binary_string[2:] # Print the binary string print(binary_string) 

Produktion:

 11010 

Metode 2: Brug af bitvise operatører

Python har indbygget bitvise operatører der kan bruges til at manipulere binære data. Du kan bruge disse operatorer til at konvertere en hexadecimal streng til binær ved først at konvertere strengen til et heltal og derefter bruge bitvise operationer til at udtrække de binære cifre.

Eksempel:

Her er et eksempel på et kodestykke:

 # Define a hexadecimal string hex_string = '1F' # Convert the hexadecimal string to an integer using the base 16 hex_integer = int(hex_string, 16) # Convert the integer to binary using bitwise operators binary_string = format(hex_integer, 'b') # Print the binary string print(binary_string) 

Produktion:

 11111 

Forklaring:

I denne kode konverterer vi først den hexadecimale streng til et heltal ved hjælp af int() funktion med basen indstillet til 16 . Derefter bruger vi format() funktion med formatspecifikationen 'b' at konvertere hele tallet til en binær streng. Det format() funktion returnerer en streng med indledende nuller efter behov for at repræsentere den binære værdi. Til sidst udskriver vi den binære streng.

Metode 3: Brug af hex2bin()-funktionen fra binascii-modulet

Python's binascii modul giver en hex2bin() funktion, der kan bruges til at konvertere en hexadecimal streng til binær.

Eksempel:

Her er et eksempel på et kodestykke:

slå udviklertilstand fra
 # Import the binascii module import binascii # Define a hexadecimal string hex_string = '1A' # Convert the hexadecimal string to binary using the binascii.unhexlify() function binary_string = bin(int.from_bytes(binascii.unhexlify(hex_string), byteorder='big')) # Print the binary string print(binary_string) 

Produktion:

 0b11010 

Forklaring:

I denne kode importerer vi først binascii modul. Derefter definerer vi den hexadecimale streng, vi vil konvertere. Vi sender den hexadecimale streng til binascii.unhexlify() funktion til at konvertere det til et bytes-objekt. Derefter konverterer vi byte-objektet til et heltal ved hjælp af int.fra_bytes() funktion, med byte-rækkefølgen sat til 'stor' (mest signifikant byte først). Til sidst sender vi hele tallet til beholder() funktion for at få den binære strengrepræsentation.

Bemærk: Bin()-funktionen returnerer den binære streng med et '0b'-præfiks. Hvis du vil fjerne præfikset, kan du bruge snoreudskæring.

Metode 4: Brug af listeforståelse og strengformatering

Vi kan konvertere en hexadecimal streng til binær ved hjælp af en listeforståelse der itererer over hvert hexadecimalt ciffer i strengen og konverterer det til dets binære ækvivalent ved hjælp af strengformatering.

Eksempel:

 # Define a hexadecimal string hex_string = '1A' # Convert the hexadecimal string to binary using a list comprehension and string formatting binary_string = ''.join(['{0:04b}'.format(int(d, 16)) for d in hex_string]) # Print the binary string print(binary_string) 

Produktion:

 00011010 

Forklaring:

I denne kode definerer vi først den hexadecimale streng, vi vil konvertere. Derefter bruger vi en listeforståelse at iterere over hvert hexadecimalt ciffer i strengen. For hvert ciffer konverterer vi det til et heltal ved hjælp af int() funktion med basen indstillet til 16 , og formater den derefter som en binær streng med 4 cifre bruger '{0:04b}'.format() strengformateringssyntaks. De resulterende binære strenge samles i en liste, som derefter føjes sammen til en enkelt streng ved hjælp af ''.tilslutte() fungere.

css lister

Metode 5: Brug af NumPy-biblioteket

Hvis du har NumPy bibliotek installeret, kan du bruge numpy.base_repr() funktion til at konvertere en hexadecimal streng til binær.

Eksempel:

 # Import the numpy library import numpy as np # Define a hexadecimal string hex_string = '1A' # Convert the hexadecimal string to binary using the numpy.base_repr() function binary_string = np.base_repr(int(hex_string, 16), base=2) # Print the binary string print(binary_string) 

Produktion:

 11010 

Bemærk: Funktionen numpy.base_repr() returnerer den binære streng uden præfiks eller indledende nuller, i modsætning til den indbyggede bin()-funktion.