البرمجة

فرز البيانات في بايثون: دليل سريع للمبتدئين

بالطبع، فهم مبادئ البرمجة في بايثون وكيفية فرز البيانات يعد خطوة هامة في رحلتك التعلمية. لفهم كيفية فرز البيانات في القائمة التي قدمتها، يمكنك استخدام الدالة sorted وتحديد مفتاح الفرز باستخدام الوظيفة lambda. هنا الكود الذي يقوم بفرز القائمة من القيمة الأكبر إلى القيمة الأصغر:

python
class Student: def __init__(self, code, name, number): self.code = code self.name = name self.number = number students = [ Student("901", "John Doe", "123456"), Student("902", "Mary Mount", "566665"), Student("903", "David Lee", "394624") ] # فرز القائمة من القيمة الأكبر إلى القيمة الأصغر باستخدام lambda والمفتاح number sorted_students = sorted(students, key=lambda x: int(x.number), reverse=True) # طباعة النتيجة for student in sorted_students: print(f"{student.code}\t{student.name}\t{student.number}")

هذا الكود يستخدم الدالة sorted لفرز القائمة students باستخدام key=lambda x: int(x.number) للفرز حسب قيمة number، و reverse=True للحصول على الترتيب من الأعلى إلى الأسفل. ثم يتم طباعة القائمة المفرزة.

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

المزيد من المعلومات

بالطبع، دعونا نقوم بتوسيع فهمنا لمزيد من المعلومات حول الكود والمفاهيم المتعلقة:

في الكود السابق، قمنا بإنشاء فئة Student لتمثيل الطلاب، وقمنا بإنشاء قائمة students التي تحتوي على كائنات Student. ثم استخدمنا دالة sorted لفرز القائمة بناءً على قيمة number في كل كائن Student. الـ lambda في key=lambda x: int(x.number) تساعد في تحديد الوظيفة المؤقتة لتحويل قيمة number إلى نوع الصحيح (int) لضمان الفرز الصحيح.

الآن، إليك بعض التوضيح حول المفاهيم المستخدمة:

  1. الفئة (class) في بايثون:

    • تستخدم لتحديد هيكل للكائنات.
    • تحتوي عادة على المتغيرات الخاصة (self) والأساليب التي تعمل على هذه المتغيرات.
  2. قائمة (list) في بايثون:

    • هي هيكل بيانات يحتوي على عناصر مرتبة.
    • يمكن الوصول إلى العناصر في القائمة بواسطة فهرسها.
  3. دالة sorted في بايثون:

    • تقوم بفرز العناصر في التسلسل بناءً على معيار معين.
    • يمكن استخدام مفتاح (key) لتحديد الدالة التي ستستخدم للفرز.
  4. lambda في بايثون:

    • تستخدم لإنشاء وظائف صغيرة (مؤقتة) دون الحاجة إلى تعريف الدالة باسم.
    • في هذا السياق، تستخدم لتحديد الوظيفة التي تحول قيمة number إلى نوع الصحيح.
  5. reverse=True في دالة sorted:

    • تستخدم لتحديد ما إذا كانت القائمة يجب أن تكون مرتبة بترتيب تنازلي أم صاعدي.

هذه المعلومات تشكل خطوة إضافية نحو فهم بايثون وكيفية التعامل مع البيانات والهياكل فيه. إذا كنت بحاجة إلى توضيح إضافي أو لديك أي سؤال آخر، فلا تتردد في طرحه.

زر الذهاب إلى الأعلى