Memahami Kepentingan Awalan 'b' dalam Rentetan Python
Dalam kod sumber Python, anda mungkin menghadapi rentetan yang diawali dengan huruf kecil ' b'. 'b' ini menandakan bait rentetan literal.
Bait lwn Unikod
Dalam Python 3, rentetan kebanyakannya adalah objek Unikod. Rentetan Unicode mewakili aksara teks menggunakan titik kod daripada pelbagai standard, termasuk UTF-8, UTF-16 dan UTF-32.
Sebaliknya, objek bait dalam Python mewakili binari data, termasuk teks yang dikodkan. Ia mengandungi jujukan integer dalam julat 0-255, pada asasnya mewakili nilai data mentah.
Mencipta Objek Bait
Untuk mencipta objek bait, gunakan 'b ' awalan sebelum literal rentetan:
<code class="python">b"abcdef"</code>
Sebagai alternatif, anda juga boleh membina objek bait daripada jujukan integer atau dengan mengekod rentetan Unicode:
<code class="python">bytes([72, 101, 108, 108, 111]) bytesvalue = strvalue.encode('utf-8')</code>
Menyahkod dan Pengekodan
Untuk mendapatkan teks Unikod daripada objek bait, gunakan kaedah nyahkod():
<code class="python">strvalue = bytesvalue.decode('utf-8')</code>
Sebaliknya, untuk menukar teks Unikod kepada bait, gunakan kaedah encode() atau pembina objek bait:
<code class="python">bytesvalue = strvalue.encode('utf-8') bytesvalue = bytes(strvalue, 'utf-8')</code>
Pengendalian Ralat
Kedua-dua kaedah penyahkod() dan pengekodan() menerima hujah pilihan untuk mengendalikan ralat semasa proses penukaran. Argumen ini menentukan cara aksara tidak sah atau isu pengekodan harus diuruskan.
Keserasian Python 2
Python 2 versi 2.6 dan 2.7 turut menyokong awalan 'b' untuk literal rentetan untuk memudahkan keserasian kod dengan Python 3.
Ketidakbolehubah
Objek Bytes tidak boleh diubah, bermakna kandungannya tidak boleh diubah suai. Jika anda memerlukan perwakilan data binari boleh ubah, gunakan objek bytearray() sebaliknya.
Atas ialah kandungan terperinci Apakah Maksud Awalan \'b\' dalam Rentetan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!