logo

Kako pretvoriti heksadecimalni u binarni u pythonu?

The 'hex' je skraćenica za Heksadecimalni . To je sustav numeriranja koji koristi 16 kao svoju bazu. Obično se koristi u računalstvu i digitalnoj elektronici jer može predstavljati a bajt (8 bita) podataka sa samo dvije znamenke, što ga čini sažetijim i lakšim za čitanje od binarnog. U heksadecimalnom obliku, znamenke 0-9 predstavljaju svoje vrijednosti, dok slova A-F (ili a-f) predstavljaju vrijednosti 10-15 (prikaz, stručni). , odnosno.

cijeli broj u niz

Metoda 1: Korištenje funkcije bin().

Pretvaranje heksadecimalnog u binarno u Pythonu može se izvršiti pomoću ugrađene funkcije tzv. bin() . Ova funkcija uzima cijeli broj ili niz kao ulaz i vraća njegov binarni ekvivalent.

Primjer:

 # 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) 

Izlaz:

 11010 

Metoda 2: Korištenje bitovnih operatora

Python nudi ugrađeni bitovi operatori koji se može koristiti za manipuliranje binarnim podacima. Ove operatore možete upotrijebiti za pretvaranje heksadecimalnog niza u binarni tako da prvo pretvorite niz u cijeli broj, a zatim pomoću bit-bitnih operacija izdvojite binarne znamenke.

Primjer:

Evo primjera isječka koda:

 # 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) 

Izlaz:

 11111 

Obrazloženje:

U ovom kodu prvo pretvaramo heksadecimalni niz u cijeli broj pomoću int() funkcija s bazom postavljenom na 16 . Nakon toga koristimo format() funkcija s specifikatorom formata 'b' za pretvaranje cijelog broja u binarni niz. The format() funkcija vraća niz s vodećim nulama koliko je potrebno za predstavljanje binarne vrijednosti. Na kraju ispisujemo binarni niz.

Metoda 3: Korištenje funkcije hex2bin() iz modula binascii

Pythonova binascii modul pruža a hex2bin() funkcija koja se može koristiti za pretvaranje heksadecimalnog niza u binarni.

brzo sortiranje java

Primjer:

Evo primjera isječka koda:

 # 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) 

Izlaz:

 0b11010 

Obrazloženje:

U ovom kodu prvo uvozimo binascii modul. Nakon toga definiramo heksadecimalni niz koji želimo pretvoriti. Prosljeđujemo heksadecimalni niz na binascii.unhexlify() funkciju za pretvaranje u objekt bytes. Nakon toga objekt bajta pretvaramo u cijeli broj pomoću int.from_bytes() funkcija, s redoslijedom bajtova postavljenim na 'velik' (najznačajniji bajt prvi). Na kraju prosljeđujemo cijeli broj u bin() funkcija za dobivanje binarnog prikaza niza.

Napomena: funkcija bin() vraća binarni niz s prefiksom '0b'. Ako želite ukloniti prefiks, možete koristiti rezanje niza.

Metoda 4: Korištenje razumijevanja popisa i oblikovanja niza

Možemo pretvoriti heksadecimalni niz u binarni koristeći a razumijevanje popisa koji ponavlja svaku heksadecimalnu znamenku u nizu i pretvara ga u njegov binarni ekvivalent koristeći formatiranje niza.

Primjer:

 # 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) 

Izlaz:

 00011010 

Obrazloženje:

U ovom kodu prvo definiramo heksadecimalni niz koji želimo pretvoriti. Nakon toga koristimo a razumijevanje popisa za ponavljanje svake heksadecimalne znamenke u nizu. Za svaku znamenku pretvaramo je u cijeli broj pomoću int() funkcija s bazom postavljenom na 16 , a zatim ga formatirajte kao binarni niz pomoću 4 znamenke koristiti '{0:04b}'.format() sintaksa oblikovanja niza. Rezultirajući binarni nizovi skupljaju se u popis, koji se zatim spaja u jedan niz pomoću ''.pridružiti() funkcija.

Metoda 5: Korištenje biblioteke NumPy

Ako imate NumPy biblioteka instaliran, možete koristiti numpy.base_repr() funkcija za pretvaranje heksadecimalnog niza u binarni.

Primjer:

 # 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) 

Izlaz:

java iznimke
 11010 

Napomena: funkcija numpy.base_repr() vraća binarni niz bez ikakvog prefiksa ili vodećih nula, za razliku od ugrađene funkcije bin().