Python cetak hex byte sebagai string

# Contoh program python menggunakan hex() untuk mengonversi literal byte

# karakter ascii ke string literal digit heksadesimal

bytesLiteral = b"hell\x6f";

hexVal       = bytesLiteral. hex();

print("Byte literal dari karakter ascii. ");

cetak(bytesLiteral);

print("String literal dari digit heksadesimal. ");

cetak(hexVal);

bytesLiteral = b"\x77\x6f\x72\x6c\x64";

hexVal       = bytesLiteral. hex();

print("Byte literal dari karakter ascii. ");

cetak(bytesLiteral);

print("Byte literal dari digit heksadesimal diubah menjadi string literal. ");

cetak(hexVal);

Byte dikodekan dalam ASCII dan memiliki peran yang sangat dinamis di Python. Di Python 2, mereka hanyalah alias untuk string. Namun, Python 3 mengubah definisinya karena string sekarang dikodekan sebagai karakter Unicode alih-alih byte yang dikodekan ASCII

Karena byte dikodekan ASCII, karakter dapat direpresentasikan sebagai bilangan bulat antara 0 hingga 255. Kami dapat mewakilinya dalam notasi lain juga seperti sistem dengan digit Heksadesimal

Pada artikel ini, kita akan membahas cara mencetak Bytes sebagai Hex dengan Python

Menggunakan fungsi hex()_ untuk mencetak Byte sebagai Hex dengan Python

Piton 3. 5 memperkenalkan fungsi hex() digunakan untuk mengembalikan representasi angka Heksadesimal. Kita dapat menggunakannya untuk langsung mencetak Bytes sebagai Hex dengan Python

Pertama, kita akan membuat array Bytes menggunakan fungsi bytes() dan kemudian kita akan mencetaknya sebagai digit Heksadesimal. Outputnya meskipun, tidak akan memiliki spasi di antara digit

Sebagai contoh,

Menggunakan fungsi Hex()

1

2

3

4

 

ar = byte([73, 22, 44, 210])

cetak(byte(ar).hex())    <

 

Keluaran

49162cd2

Perhatikan bahwa ini adalah metode yang paling efisien dan cepat untuk mencapai representasi ini

Menggunakan fungsi format()_ untuk mencetak Byte sebagai Hex dengan Python

Fungsi format()_ dapat digunakan untuk merepresentasikan string hasil akhir dalam gaya yang kita inginkan. Kita dapat menentukan penentu format dalam fungsi

Kita dapat menggunakan fungsi ini untuk mendapatkan representasi bilangan Heksadesimal. Untuk ini, kami akan menggunakan specifier 02x

Untuk mencetak Bytes sebagai Hex dengan Python, kita akan mengulangi string Byte dan mendapatkan representasi Hexadecimal dari setiap karakter satu per satu. Kemudian, kita akan menggabungkan semua karakter dalam satu string menggunakan fungsi join()

Kami telah menerapkan logika ini dalam kode berikut

Menggunakan fungsi format()

1

2

3

4

 

ar = byte([73, 22, 44, 210])

cetak(' '. gabung('{. 02x}'. format(x) untuk x in ar))    

 

Keluaran

49 16 2c d2

Bacaan lebih lanjut

Cetak byte tanpa b dengan Python

Baca lebih lanjut →

Mengkonversi bytearray ke String di Jawa

Baca lebih lanjut →

Menggunakan fungsi binascii.hexlify()_ untuk mencetak Byte sebagai Hex dengan Python

Modul binascii adalah modul khusus dalam Python yang memungkinkan kita mendapatkan berbagai representasi byte berkode biner dan ASCII.

Fungsi hexlify() bekerja mirip dengan fungsi hex() yang dibahas sebelumnya dan memberi kita representasi heksadesimal dari sebuah byte

Lihat kode di bawah ini

Menggunakan fungsi Hexlify()

1

2

3

4

5

 

impor binascii

ar = byte([73, 22, 44, 210])

cetak(binascii. hexlify(byte(ar)))    

 

Keluaran

b’49162cd2′

Perhatikan bahwa hasil akhir memiliki awalan hex()1 sebelum representasi Heksadesimal. Ini berarti tipe hex()_2 dan bukan string seperti pada metode sebelumnya

Kesimpulan

Dalam tutorial ini, kita membahas cara mencetak Bytes sebagai Hex dengan Python. Kami pertama kali membahas byte dan hubungannya dengan bilangan bulat dan bagaimana hal itu dapat dilihat sebagai kumpulan digit Heksadesimal

Pada metode pertama, kami menggunakan fungsi hex(). Ini adalah metode tercepat dan paling efisien dari semuanya. Kemudian kami menggunakan pemformatan string menggunakan atribut format() untuk mendapatkan representasi heksadesimal dari setiap karakter dalam string byte dan menggabungkannya. Metode terakhir melibatkan penggunaan fungsi hexlify() yang mengembalikan hasilnya sebagai byte

Bagaimana Anda mencetak string nilai hex dengan Python?

Python. fungsi hex() .
Versi: kapan. .
Sintaksis. heksa (x)
Parameter. .
Contoh. Fungsi python hex() angka = 127 cetak(angka, 'dalam hex =', hex(angka)) angka = 0 cetak(angka, 'dalam hex =', hex(angka)) angka = -35 cetak(angka, '

Bagaimana Anda mengonversi byte ke string hex dengan Python?

Cara Mengonversi Byte Menjadi Hex dengan Python .
string="March" print("String yang akan dikonversi. ",string) byte_data=bytes(string,"utf-16") print("Ini adalah objek byte. ") print("String yang dikonversi adalah. ", byte_data)
byte_data="\xff\xfeM\x00a\x00r\x00c\x00h\x00"

Bagaimana Anda mencetak byte hex dengan Python?

Cetak string sebagai byte heksadesimal dengan Python # .
Gunakan ekspresi generator untuk mengulangi string
Lewati titik kode Unicode dari setiap karakter ke fungsi hex()
Gunakan str. join() metode untuk menggabungkan objek generator menjadi sebuah string

Bagaimana cara mengonversi byte ke string hex?

Untuk mengonversi larik byte menjadi nilai hex, kita melalui setiap byte dalam larik dan menggunakan format String() . Kami menggunakan %02X untuk mencetak dua tempat ( 02 ) dari nilai Heksadesimal ( X ) dan menyimpannya dalam string st. Ini adalah proses yang relatif lebih lambat untuk konversi array byte besar.