Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

แปลงระหว่างไบนารีและ ASCII โดยใช้ Python (binascii)


โมดูล binascii ช่วยให้สามารถแปลงระหว่างไบนารีและการแสดงไบนารีที่เข้ารหัส ASCII ต่างๆ โมดูล binascii มีฟังก์ชันระดับต่ำที่เขียนด้วยภาษา C เพื่อความเร็วที่มากขึ้น ใช้โดยโมดูลระดับสูง เช่น โมดูล uu, base64 หรือ binhex

โมดูล binascii กำหนดฟังก์ชันต่อไปนี้ ฟังก์ชันเหล่านี้มีชื่อว่า a2b_* หรือ b2a_*

binascii.a2b_uu(สตริง): แปลงข้อมูล uuencoded บรรทัดเดียวกลับไปเป็นไบนารีและส่งคืนข้อมูลไบนารี โดยปกติบรรทัดจะมี 45 (ไบนารี) ไบต์ ยกเว้นบรรทัดสุดท้าย ข้อมูลบรรทัดอาจตามด้วยช่องว่าง

binascii.b2a_uu(ข้อมูล): แปลงข้อมูลไบนารีเป็นบรรทัดของอักขระ ASCII ค่าที่ส่งคืนคือบรรทัดที่แปลงแล้ว รวมถึงอักขระขึ้นบรรทัดใหม่ด้วย

binascii.a2b_base64(สตริง): แปลงบล็อกของข้อมูล base64 กลับเป็นไบนารีและส่งคืนข้อมูลไบนารี

binascii.b2a_base64(ข้อมูล): แปลงข้อมูลไบนารีเป็นบรรทัดของอักขระ ASCII ในการเข้ารหัส base64 ค่าที่ส่งคืนคือบรรทัดที่แปลงแล้ว รวมถึงอักขระขึ้นบรรทัดใหม่หากการขึ้นบรรทัดใหม่เป็นจริง

binascii.a2b_qp(ข้อมูล): แปลงบล็อกของข้อมูลที่เสนอราคาสำหรับพิมพ์กลับเป็นไบนารีและส่งคืนข้อมูลไบนารี

binascii.b2a_qp(ข้อมูล): แปลงข้อมูลไบนารีเป็นบรรทัดของอักขระ ASCII ในการเข้ารหัสที่พิมพ์ได้โดยใช้เครื่องหมายคำพูด มูลค่าที่ส่งคืนคือบรรทัดที่แปลงแล้ว

binascii.a2b_hqx(สตริง): แปลงข้อมูล ASCII ที่จัดรูปแบบ binhex4 เป็นไบนารีโดยไม่ต้องทำ RLEdecompression สตริงควรมีเลขฐานสองเต็มหรือมีบิตที่เหลือเป็นศูนย์

binascii.rledecode_hqx(data): ทำการคลายการบีบอัดข้อมูล REL ตามมาตรฐาน binhex4

binascii.rlecode_hqx(ข้อมูล): ดำเนินการบีบอัดข้อมูล RLE สไตล์ binhex4 และส่งคืนผลลัพธ์

binascii.b2a_hqx(ข้อมูล): ดำเนินการแปล hexbin4 binary-to-ASCII และส่งคืนสตริงที่เป็นผลลัพธ์ อาร์กิวเมนต์ควรมีการเข้ารหัส RLE แล้ว

binascii.crc_hqx(data, value): คำนวณค่า CRC 16 บิตของข้อมูล โดยเริ่มต้นด้วยค่าเป็น CRC เริ่มต้น แล้วส่งกลับผลลัพธ์

binascii.crc32(data[, value]): คำนวณ CRC-32 ซึ่งเป็นการตรวจสอบข้อมูลแบบ 32 บิต โดยเริ่มจากค่า CRC เริ่มต้น CRC เริ่มต้นเริ่มต้นคือศูนย์