crc --- حساب CRC¶
تحسب الوحدة crc المجاميع الاختبارية CRC16 وCRC32 على مخازن مؤقتة شبيهة بالبايت. يمكن استدعاء كل دالة باستخدام data فقط لبدء CRC جديد، أو باستخدام value سابقة لمتابعة CRC قائم عبر عدة مخازن مؤقتة.
مثال:
import crc
c = crc.crc32(b"hello ")
c = crc.crc32(b"world", value=c)
print(hex(c))
الدوال¶
- crc.crc16(data: bytes, *, value: int = None) int¶
تحسب مجموعاً اختبارياً من نوع CRC16 على
data، التي يجب أن تكون كائناً شبيهاً بالمخزن المؤقت (مثلbytesأوbytearrayأوmemoryview).إذا لم تُقدَّم
value، يُبدأ CRC16 جديد علىdataويُعاد. إذا قُدِّمتvalue، تُستخدم كحالة CRC16 السابقة وتُحدَّث بـdataقبل إعادتها، مما يتيح حساب CRC16 عبر عدة مخازن مؤقتة. تُستخدم البتات الـ 16 الدنيا فقط منvalue.يعيد CRC16 الناتج كـ
int.
- crc.crc32(data: bytes, *, value: int = None) int¶
تحسب مجموعاً اختبارياً من نوع CRC32 على
data، التي يجب أن تكون كائناً شبيهاً بالمخزن المؤقت (مثلbytesأوbytearrayأوmemoryview).إذا لم تُقدَّم
value، يُبدأ CRC32 جديد علىdataويُعاد. إذا قُدِّمتvalue، تُستخدم كحالة CRC32 السابقة وتُحدَّث بـdataقبل إعادتها، مما يتيح حساب CRC32 عبر عدة مخازن مؤقتة.يعيد CRC32 الناتج كـ
int.