sorted()
ترتيب أي متسلسلة — sorted() sorted()
sorted() تُرجع قائمة جديدة مرتّبة من أي كائن قابل للتكرار، دون تعديل الأصل.
تعمل مع أي نوع قابل للتكرار (قائمة، صف، مجموعة، مفاتيح قاموس...) وتُرجع دائمًا قائمة جديدة. يمكن التحكّم بمعيار الترتيب عبر key، وبالاتجاه عبر reverse.
ترتيبها مستقر (stable) — العناصر المتساوية تحتفظ بترتيبها النسبي الأصلي.
الصياغة
sorted(iterable, key=None, reverse=False)
📄 مثال
students = [("سارة", 92), ("خالد", 78), ("نور", 88)]
by_score = sorted(students, key=lambda s: s[1], reverse=True)
print(by_score)
# [('سارة', 92), ('نور', 88), ('خالد', 78)]أهم المعاملات
| المعامل | الوظيفة |
|---|---|
| key | دالة تُستدعى على كل عنصر لاستخراج قيمة المقارنة، مثل key=len أو key=lambda x: x[1] |
| reverse | إن كان True يرتّب تنازليًا بدل تصاعديًا |
💡 نصائح عملية
- sorted() آمنة دائمًا لأنها لا تُعدّل الأصل — بعكس list.sort() التي تُعدّل القائمة في مكانها وتُرجع None
- استخدم key=str.lower لترتيب نصوص بدون حساسية لحالة الأحرف
⚠️ أخطاء شائعة
- كتابة x = my_list.sort() ثم استخدام x — تُعطي None لأن sort() تُعدّل في مكانها ولا تُرجع شيئًا
- نسيان أن ترتيب النصوص الافتراضي حسّاس لحالة الأحرف (الأحرف الكبيرة تُرتَّب قبل الصغيرة)
خصائص ذات صلة
🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار PYTHON الكامل بالعربي.