reversed() عكس تسلسل
آخر تحديث: 2026-09-22
reversed() عكس تسلسل
يُرجع reversed(seq) مكرّرًا معكوسًا؛ يمكن استخدامه مع list وtuple وstr وrange وغيرها من الكائنات التي تنفّذ __reversed__ أو تدعم بروتوكول التسلسل.
| التصنيف | الدوال المدمجة |
|---|---|
| النوع | دالة مدمجة |
| إصدار بايثون | all |
📝 الصياغة
reversed(sequence)
⚙️ المعاملات
| sequence مطلوب | A sequence (list/tuple/str/range, etc.) or an object implementing __reversed__. |
|---|
القيمة المُعادة:A reverse iterator usable with list() or a for-loop.
💥 الاستثناءات
TypeError— Raised when the object is not a sequence and has no __reversed__.
▶ مثال
عدّل الكود واضغط تشغيل لرؤية النتيجة في لوحة المخرجات:
المخرجات:
[3, 2, 1]
o l l e h
🏷️ دوال مدمجة ذات صلة
💡 حالات ذات صلة
المزيد من الحالات قادم قريباً — تابعونا.
❓ أسئلة شائعة
Qماذا تُرجع reversed()؟
Aتُرجع مكررًا عكسيًا، لذا يلزم list(reversed([1, 2, 3])) للحصول على [3, 2, 1]؛ وهي نفسها ليست قائمة.
Qما الفرق بين reversed() و lst[::-1]؟
Alst[::-1] تُرجع قائمة كاملة جديدة (نسخ البيانات، ذاكرة O(n))؛ reversed(lst) مكرر كسول لا ينسخ شيئًا ولا يصلح إلا للعبور مرة واحدة من النهاية إلى البداية.
Qلماذا يُثير reversed({1, 2, 3}) خطأ TypeError؟
Aالمجموعة غير مرتبة ولا تملك مفهوم «العكس»؛ تدعم reversed() التسلسلات فقط (list/tuple/str/range) أو الكائنات التي تنفذ __reversed__.
Qهل reversed() و sorted(lst, reverse=True) متطابقان؟
Aلا. reversed يحافظ على الترتيب الأصلي ويخرجه بالعكس دون فرز؛ sorted(reverse=True) يفرز تنازليًا. لـ [3,1,2] الأول يعطي [2,1,3] والثاني [3,2,1].