Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menukar Antara ASCII dan Perwakilan Binari dalam Python?

Bagaimana untuk Menukar Antara ASCII dan Perwakilan Binari dalam Python?

Patricia Arquette
Lepaskan: 2024-11-30 14:52:10
asal
173 orang telah melayarinya

How to Convert Between ASCII and Binary Representations in Python?

Menukar Perduaan kepada ASCII dan Kembali

Coretan kod yang diberikan menukar rentetan kepada perwakilan binari. Untuk memahami mekanismenya, mari kita analisa pendekatan alternatif.

Python 2: Julat Aksara ASCII

Untuk aksara ASCII dalam julat [ -~], Python 2 menyediakan penyelesaian yang lebih mudah:

import binascii

n = int(binascii.hexlify('hello'), 16)
binary_representation = bin(n)
Salin selepas log masuk

Kod ini menukar rentetan 'hello' kepada perwakilan heksadesimal dan kemudian menjadi perwakilan binari.

Menterbalikkan Penukaran

Untuk menukar perwakilan binari kembali kepada rentetan:

n = int('0b110100001100101011011000110110001101111', 2)
string_representation = binascii.unhexlify('%x' % n)
Salin selepas log masuk

Ini menukarkan perwakilan binari kembali kepada perwakilan heksadesimal dan kemudian ke dalam rentetan asal 'hello.'

Python 3.2 :

Python 3.2 memperkenalkan kaedah tambahan:

n = int.from_bytes('hello'.encode(), 'big')
binary_representation = bin(n)
Salin selepas log masuk
n = int('0b110100001100101011011000110110001101111', 2)
string_representation = n.to_bytes((n.bit_length() + 7) // 8, 'big').decode()
Salin selepas log masuk

Sokongan Unicode dalam Python 3:

Untuk menyokong semua aksara Unikod dalam Python 3:

def text_to_bits(text, encoding='utf-8', errors='surrogatepass'):
    # ...

def text_from_bits(bits, encoding='utf-8', errors='surrogatepass'):
    # ...
Salin selepas log masuk

Fungsi ini menukar antara teks dan perwakilan binari, menyokong aksara Unicode.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Antara ASCII dan Perwakilan Binari dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan