كيفية تحسين التعامل مع البيانات باستخدام Pydantic Dataclasses

Kyfyt Thsyn Alt Aml M Albyanat Bastkhdam Pydantic Dataclasses



تقدم فئات بيانات Pydantic حلاً متقدمًا لتحسين معالجة البيانات في Python. يعمل العمل كإطار للتحقق من صحة البيانات على تبسيط عملية إنشاء البيانات المنظمة من خلال دمجها مع فئات البيانات. يقوم بأتمتة التحقق من صحة البيانات، والإبلاغ عن الأخطاء، وتحويلات نوع البيانات. وهذا يضمن توافق البيانات مع المتطلبات المحددة. كما أنه يدعم القيم الافتراضية والحقول الاختيارية وهياكل البيانات المعقدة. باختصار، تساعد فئات بيانات Pydantic المبرمجين على تحسين ممارسات معالجة البيانات، مما يؤدي إلى نتائج ترميز فعالة وموثوقة.

بناء الجملة:

هناك طريقة بسيطة لكنها فعالة لتحسين كيفية إدارة البيانات باستخدام فئات بيانات Pydantic في Python وهي استخدام مصمم الفصل الذي نقوم من خلاله بإنشاء نموذج لكيفية ظهور بياناتنا. إنه مثل إعطاء بياناتنا بنية واضحة. لذا، فإن بناء الجملة لتحديد فئة البيانات هو كما يلي:







فصل اسم النموذج ( نموذج القاعدة )

يعرض 'model_name' اسم النموذج الذي نريد إنشاءه، ويعمل 'BaseModel' من Pydantic كحارس يضمن أن البيانات تتبع القواعد التي وضعناها وتمريرها إلى النموذج كمعلمة إدخال خاصة به. داخل الفصل، نحدد نوع المعلومات التي يجب أن تحتوي عليها كل قطعة من البيانات. تتأكد هذه العملية من أنه عندما نقوم بإنشاء مثيل لفئة البيانات، فإن المعلومات التي نقدمها تتطابق مع ما حددناه.



الطريقة الأولى: معالجة محسنة للبيانات باستخدام فئة بيانات Pydantic

تخيل أننا نعمل على تطوير تطبيق بسيط لتنظيم المعلومات حول الكتب الموجودة في مجموعتنا. نريد التأكد من أن البيانات التي نجمعها لهذا الغرض دقيقة ومتسقة ومنظمة بشكل جيد. هذا هو المكان الذي تتدخل فيه فئات بيانات Pydantic لتبسيط العملية وتحسينها.



يتطلب البدء بالمثال تحديد فئة Pydantic Dataclass. لذلك، نبدأ بتحديد فئة بيانات Pydantic تسمى 'الكتب' والتي تمثل تفاصيل الكتب. لتحديد فئة البيانات لـ Pydantic، نحتاج إلى التأكد من تثبيت جميع حزم Pydantic مسبقًا في المشروع.





من متحذلق يستورد نموذج القاعدة

باستخدام مصمم الفصل، نقوم بإنشاء فئة 'الكتاب' الموروثة من BaseModel الخاص بـ Pydantic. داخل الفصل، نحدد السمات مثل العنوان والمؤلف وrelease_year، كل منها مرتبط بنوع البيانات الخاص به.

فصل كتاب ( نموذج القاعدة ) :

عنوان: شارع

مؤلف: شارع

سنة الإصدار: كثافة العمليات

بعد إنشاء نموذج فئة، نستخدم فئة بيانات Pydantic، مع الاستفادة من قوة فئة بيانات 'الكتاب' للتعامل مع بيانات 'الفيلم':



في هذا القسم، نقوم بتقليد المستخدم الذي يقوم بإدخال التفاصيل المتعلقة بالكتاب. يحتوي نموذج فئة بيانات 'الكتاب' على سمات مثل العنوان والمؤلف وسنة الإصدار مع أنواع البيانات المميزة الخاصة بها. لذلك، في هذا الجزء، أي 'الإدخال'، نحدد قيمها.

مدخل = {

'عنوان' : 'يعاني' ,

'مؤلف' : 'آدم' ,

'سنة الإصدار' : 2023

}

بعد تحديد تفاصيل سمات نموذج الكتاب في الإدخال، نقوم بإنشاء مثيل 'كتاب' بالبيانات المقدمة باستخدام هذه التفاصيل؛ يتم ذلك للتأكد من أن Pydantic يتحقق تلقائيًا من صحة الإدخال مقابل بنية البيانات المحددة. إذا كان هناك أي تناقض أو خطأ، مثل سنة إصدار غير صحيحة أو عنوان مفقود، فإن Pydantic يثير الخطأ بسرعة مع تفسير سهل الاستخدام.

يحاول :

كتاب = كتاب ( ** مدخل )

مطبعة ( 'تفاصيل الكتاب:' , كتاب. عنوان , كتاب. مؤلف , كتاب. سنة الإصدار )

يستثني استثناء مثل إنها:

مطبعة ( 'خطأ:' , إنها )

بالنسبة للتعامل المحسّن مع البيانات باستخدام فئات بيانات Pydantic، نتلقى آلية مدمجة للتحقق من صحة البيانات واتساقها. يمكننا دمج الحقول الاختيارية والقيم الافتراضية والهياكل المتداخلة المعقدة لتغطية سيناريوهات البيانات المختلفة. وهذا يضمن بقاء بياناتنا منظمة ومنسقة بشكل صحيح.

تستكشف هذه الخطوة كيف توفر فئات بيانات Pydantic إمكانات محسنة لمعالجة البيانات من خلال ميزات مثل الحقول الاختيارية والقيم الافتراضية والهياكل المتداخلة.

فيما يلي مثال نوضح فيه كيفية إضافة الحقول الاختيارية والقيم الافتراضية:

لنفترض أننا نريد السماح للمستخدمين بإدخال تفاصيل إضافية حول الكتب مثل النوع ووقت التشغيل. ومع ذلك، قد لا تكون هذه التفاصيل متاحة دائمًا. باستخدام فئات بيانات Pydantic، يمكننا تحقيق ذلك بسهولة عن طريق جعل الحقول اختيارية وحتى تعيين القيم الافتراضية.

في هذا المثال، تتضمن فئة البيانات 'الفيلم' حقلين جديدين: اللغة التي كتب بها الكتاب وعدد الصفحات. يحتوي حقل 'اللغة' على قيمة افتراضية هي 'غير معروف' والتي تشير إلى أنه إذا لم يقدم المستخدم هذه التفاصيل، فستكون القيمة الافتراضية هي 'غير معروف'. يعد حقل 'عدد الصفحات' اختياريًا ويمكن تركه فارغًا (تعيينه على لا شيء).

من متحذلق يستورد نموذج القاعدة
فصل كتاب ( نموذج القاعدة ) :
عنوان: شارع
مؤلف: شارع
سنة الإصدار: كثافة العمليات
لغة: شارع = 'مجهول'
الصفحات: كثافة العمليات = لا أحد
مدخل = {
'عنوان' : 'يعاني' ,
'مؤلف' : 'آدم' ,
'سنة الإصدار' : 2023 ,
'لغة' : 'إنجليزي' ,
'الصفحات' : 2. 3. 4
}
كتاب = كتاب ( ** مدخل )
مطبعة ( 'تفاصيل الكتاب:' , كتاب. عنوان , كتاب. مؤلف , كتاب. سنة الإصدار , كتاب. لغة , كتاب. الصفحات )

يمكننا نسخ هذه الأسطر من التعليمات البرمجية ولصقها في المترجم لمراقبة النتائج:

من متحذلق يستورد نموذج القاعدة
فصل كتاب ( نموذج القاعدة ) :
عنوان: شارع
مؤلف: شارع
سنة الإصدار: كثافة العمليات
مدخل = {
'عنوان' : 'يعاني' ,
'مؤلف' : 'آدم' ,
'سنة الإصدار' : 2023
}

# إنشاء مثيل الكتاب
يحاول :
كتاب = كتاب ( ** مدخل )
مطبعة ( 'تفاصيل الكتاب:' , كتاب. عنوان , كتاب. مؤلف , كتاب. سنة الإصدار )
يستثني استثناء مثل إنها:
مطبعة ( 'خطأ:' , إنها )

من خلال تضمين هذه الحقول الاختيارية والقيم الافتراضية، يضمن Pydantic أن تظل البيانات جيدة التنظيم ومتسقة حتى لو لم يقدم المستخدمون تفاصيل معينة.

الطريقة الثانية: التعامل مع البيانات باستخدام Dataclass في Pydantic لنموذج تسجيل الطالب

تخيل أننا نقوم بإعداد استمارة تسجيل لحدث مدرسي. يحتاج الأشخاص إلى إدخال معلوماتهم، ونريد تجنب الأخطاء. هذا هو المكان الذي تساعد فيه فئات بيانات Pydantic. يتأكدون من صحة البيانات ويتعاملون معها بسهولة.

بعد إحضار الحزم اللازمة لمشروع بايثون، قمنا بتعريف فئة بيانات Pydantic عن طريق إنشاء فئة بيانات Pydantic تسمى 'Student' للحصول على تفاصيل المشاركين.

من متحذلق يستورد نموذج القاعدة

استخدم مصمم الفصل لإعداد فصل 'الطالب'. إنه يرث من نموذج Pydantic’s BaseModel. في الداخل، نقوم بتسمية السمات مثل الاسم والبريد الإلكتروني والقسم والهاتف، كل منها بنوع البيانات الخاص بها.

فصل طالب ( نموذج القاعدة ) :

اسم: شارع

بريد إلكتروني : شارع

قسم: شارع

هاتف: شارع

مع استخدام فئة بيانات Pydantic الآن، يمكنك العمل مع فئة بيانات 'الطالب' لإدارة بيانات الطالب:

معلومات = {

'اسم' : 'XYZ' ,

'بريد إلكتروني' : 'xyz@student.com' ,

'قسم' : 'أندرو' ,

'هاتف' : '0003-4567234'

}

في هذا الجزء، نتظاهر بأن شخصًا ما قام بالتسجيل. عندما نقوم بإنشاء مثيل 'الطالب' باستخدام بياناته، يتحقق Pydantic مما إذا كان يناسب البنية. إذا كان هناك خطأ، مثل رسالة بريد إلكتروني بدون '@' أو قسم غير سلسلة، يتوقف Pydantic ويشرح المشكلة.

طالب = طالب ( **معلومات )

مطبعة ( 'بيانات الطالب:' , طالب )

تمنحنا المعالجة المحسنة للبيانات باستخدام فئات بيانات Pydantic بيانات جاهزة للاستخدام. يمكننا إضافة المزيد من الحقول، أو تعيين الإعدادات الافتراضية، أو العمل مع إعدادات البيانات المعقدة. كل هذا يضمن بقاء بياناتنا منظمة.

تم ذكر الكود ومقتطف الإخراج في ما يلي للملاحظة:

من متحذلق يستورد نموذج القاعدة

فصل طالب ( نموذج القاعدة ) :
اسم: شارع
بريد إلكتروني : شارع
قسم: شارع
هاتف: شارع

معلومات = {
'اسم' : 'XYZ' ,
'بريد إلكتروني' : 'xyz@student.com' ,
'قسم' : 'أندرو' ,
'هاتف' : '0003-4567234'
}
طالب = طالب ( **معلومات )
مطبعة ( 'بيانات الطالب:' , طالب )

بعد ملاحظة المخرجات، يمكننا تلخيص أن فئات بيانات Pydantic تجعل التعامل مع البيانات سلسًا في هذا المثال البسيط. يتأكدون من أن المدخلات تطابق ما نريد. وهذا يعني أخطاء أقل ومستخدمين أكثر سعادة.

خاتمة

تدمج فئات بيانات Pydantic كيفية تعاملنا مع البيانات. وهي تضمن أن تكون المعلومات دقيقة وتناسب البنية المطلوبة. وهذا يترجم إلى عدد أقل من الأخطاء والمزيد من التطبيقات التي لا تشوبها شائبة. باستخدام Pydantic، يمكن للمطورين تكريس جهودهم لصياغة تطبيقات تعمل بشكل جيد دون الانزعاج من المخاوف بشأن مشكلات البيانات. فكر في الأمر على أنه يوجد مدير مهام مخصص فقط لإدارة البيانات، مما يضمن أن كل شيء يسير بسلاسة من البداية إلى النهاية.