Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menukar Bait kepada Integer dalam Python Menggunakan int.from_bytes()?

Bagaimana untuk Menukar Bait kepada Integer dalam Python Menggunakan int.from_bytes()?

Barbara Streisand
Barbara Streisandasal
2024-10-20 07:07:02891semak imbas

How to Convert Bytes to Integers in Python Using int.from_bytes()?

Penukaran Byte ke Integer dalam Python

Apabila bekerja dengan algoritma penyulitan dan penyahsulitan, selalunya perlu menukar jujukan bait kepada nilai integer dan sebaliknya. Dalam Python, proses menukar bait kepada integer adalah mudah menggunakan fungsi int.from_bytes() terbina dalam.

Fungsi int.from_bytes() mengambil tiga argumen: bait, pesanan bait dan ditandatangani (pilihan) . Argumen bait menentukan urutan bait untuk ditukar, pesanan bait menunjukkan susunan bait (sama ada "besar" atau "sedikit") dan ditandatangani menentukan sama ada nilai itu harus dianggap sebagai integer bertanda atau tidak (lalai ialah Palsu).

Sebagai contoh, untuk menukar jujukan bait b'x03' kepada integer, kita boleh menggunakan:

<code class="python">bytes([3]) == b'\x03'
result = int.from_bytes(b'\x03', byteorder='big')
print(result)  # 3</code>

Dalam kes ini, argumen byteorder='big' menunjukkan bahawa bait yang paling ketara harus berada pada permulaan jujukan bait. Jika kami menggunakan byteorder='little', jujukan bait yang sama akan ditafsirkan sebagai 256 sebaliknya.

Argumen yang ditandatangani boleh digunakan untuk menentukan sama ada nilai itu harus dianggap sebagai integer bertanda. Sebagai contoh, untuk menukar jujukan b'xfcx00' kepada integer yang ditandatangani, kita boleh menggunakan:

<code class="python">result = int.from_bytes(b'\xfc\x00', byteorder='big', signed=True)
print(result)  # -1024</code>

Ini akan mentafsir jujukan sebagai integer yang ditandatangani menggunakan pengekodan pelengkap dua, menghasilkan nilai -1024 .

Secara keseluruhannya, fungsi int.from_bytes() menyediakan cara yang mudah dan cekap untuk menukar jujukan bait kepada nilai integer dalam Python. Dengan menyatakan susunan bait dan tandatangan, anda boleh memastikan penukaran dilakukan seperti yang diharapkan.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Bait kepada Integer dalam Python Menggunakan int.from_bytes()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn