اقرأ في هذا المقال
- كيفية استخدام الوحدة القياسية marshal في لغة البرمجة بايثون
- أهم الدوال الخاصة بالوحدة marshal في لغة البرمجة بايثون
- أهم أنواع الكائنات التي تدعمها الوحدة marshal في لغة البرمجة بايثون
كيفية استخدام الوحدة القياسية marshal في لغة البرمجة بايثون
تعد الوحدة (marshal) واحدة من الوحدات القياسية التي تستخدم في لغة البرمجة بايثون (Python)، حيث تضمّ هذه الوحدة مجموعة من الدوال التي من الممكن من خلالها قراءة وكتابة القيم الخاصة بلغة البرمجة بايثون بالصيغة الثنائية (binary format)، وتكون هذه الصيغة خاصة بلغة بايثون، وإنّ الهدف الرئيسي من استخدام وحدة (marshal) هو السماح لوحدات بايثون بقراءة الشيفرة وكتابتها في الملفات ذات الامتداد من نوع ((.pyc.
وتأثّر اسم هذه الوحدة بشكل كبير بالتسمية التي اعتمدها مصمّمو لغة البرمجة (Modula-3) لهذه العملية، إذ يستخدم هؤلاء المصطلح (marshalling) للتعبير عن القيام بعملية نقل البيانات، وهناك العديد من الدوال والثوابت الخاصة بهذه الوحدة.
أهم الدوال الخاصة بالوحدة marshal في لغة البرمجة بايثون
هناك العديد من الدوال الخاصة بالوحدة (marshal) في لغة البرمجة بايثون، وفيما يلي جدول يحتوي على أهم هذه الدوال:
الدالة | الاستخدام |
الدالة marshal. dump() | تقوم هذه الدالة بكتابة القيمة المعطاة في الملف المفتوح، والشكل العام لها على النحو التالي: marshal. dump(value,file[,version]) |
الدالة marshal.load() | تقوم هذه الدالة بقراءة قيمة واحدة من الملف المفتوح وتقوم بإرجاعها، والشكل العام لها على النحو التالي: marshal .load(file) |
الدالة marshal .dumps() | تقوم هذه الدالة بإرجاع كائن من نوع (bytes) والذي ستجري كتابته في ملفّ معين بواسطة الدالة (dump (value, file)). |
الدالة marshal. loads() | تقوم هذه الدالة بتحويل الكائنات الشبيهة بالبايتات إلى قيمة معينة. |
أهم أنواع الكائنات التي تدعمها الوحدة marshal في لغة البرمجة بايثون
هناك العديد من الكائنات التي تدعمها الوحدة (marshal) في لغة البرمجة بايثون، حيث أن هذه الوحدة لا تدعم جميع كائنات بايثون، وفيما يلي قائمة بأهم أنواع الكائنات التي تدعمها هذه الوحدة:
- القيم من نوع (Booleans).
- الأعداد الصحيحة (Integer).
- الأعداد العشرية ذات الفاصلة العائمة (Float Numbers).
- الأعداد المركبة (Complex number).
- السلاسل النصية.
- البايتات (bytes).
- مصفوفات البايتات.
- القوائم.
- المجموعات.
- المجموعات المجمدة (frozen set ).
- القواميس (Dictionaries).
- كائنات (code).
ويجب الانتباه إلى أنّ الصفوف والقوائم والمجموعات والمجموعات المجمّدة والقواميس مدعومة من قبل هذه الوحدة ولكن بوجود شرط، وهو أن تحتوي على قيم قابلة للترتيب بحد ذاتها.