إخراج دفعي بالطريقة الصحيحة
التخزين المؤقت في قائمة واستخدام join للطباعة بسرعة
إخراج دفعي بالطريقة الصحيحة درس مجاني في Coding Interview Prep على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Coding Interview Prep، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Coding Interview Prep 4 دروس في المجموع.
قد يكون الإخراج بطيئًا أيضًا
كما هو الحال مع القراءة، تهم الكتابة أيضًا. فاستدعاء print() آلاف المرات يكرر التفريغ، وقد يستهلك بهدوء الوقت المحدد.
اجمعوا النتائج ثم اطبعوها
الحل هو جمع إجاباتكم في قائمة أولًا، ثم إرسالها دفعة واحدة في عملية كتابة واحدة في النهاية.
out = []أضيفوا كل إجابة
داخل الحلقة، أضيفوا كل نتيجة إلى القائمة باستخدام append بدلًا من طباعتها فورًا.
out.append(str(answer))سلاسل نصية فقط، من فضلكم
تعمل join على النصوص، لذا حوّلوا الأرقام إلى سلاسل نصية قبل تخزينها، أو حوّلوها عند استخدام join.
out.append(str(x))اجمعوها في كتلة واحدة
الصقوا القائمة معًا باستخدام join، واستعملوا محرف سطر جديد حتى تظهر كل إجابة في سطرها الخاص.
result = "\n".join(out)اطبعوها كلها دفعة واحدة
يرسل print(result) الآن كل إجابة دفعة واحدة، وهو أسرع بكثير من إجراء عمليات طباعة صغيرة كثيرة.
print("\n".join(out))تجاوزوا str باستخدام مولّد
يمكنكم التحويل أثناء التنفيذ: مرّروا مولّدًا من استدعاءات str() مباشرةً إلى join، من دون حاجة إلى خطوة منفصلة.
print("\n".join(str(x) for x in out))إخراج مفصول بمسافات
هل تحتاجون إلى القيم في سطر واحد؟ استخدموا مسافة بدلًا من محرف سطر جديد عند إجراء join، لتظهر القيم جنبًا إلى جنب.
print(" ".join(map(str, row)))استخدموا sys.stdout لمزيد من السرعة
للحصول على أسرع إخراج ممكن، اكتبوا مباشرةً باستخدام sys.stdout.write، الذي يتجاوز تنسيق print().
import sys
sys.stdout.write(result)تذكّروا محرف السطر الجديد في النهاية
لا يضيف sys.stdout.write فاصل سطر، لذا أضيفوا محرف سطر جديد بأنفسكم إذا كانت منصة التحكيم تتوقعه.
sys.stdout.write(result + "\n")متى تكون عمليات الطباعة القليلة مناسبة
إذا كنتم تطبعون سطرًا أو سطرين فقط، فإن print() العادي مناسب. استخدموا التجميع فقط عندما يكون عدد الإجابات كبيرًا.
تحقق سريع
لماذا نهتم بالتخزين المؤقت للإخراج؟
مراجعة: تجميع الإخراج
تعلّمتم تخزين الإجابات مؤقتًا في قائمة، ثم إخراجها باستخدام join وprint مرة واحدة. الفكرة نفسها كالقراءة السريعة، لكن مطبّقة على جانب الكتابة. 🖨️
الأسئلة الشائعة
هل درس «إخراج دفعي بالطريقة الصحيحة» مجاني؟
نعم — نص درس «إخراج دفعي بالطريقة الصحيحة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Coding Interview Prep، انتقل إلى CoddyKit PRO. تتضمن دورة Coding Interview Prep 4 دروس في المجموع.
ماذا ستتعلم في «إخراج دفعي بالطريقة الصحيحة»؟
التخزين المؤقت في قائمة واستخدام join للطباعة بسرعة تتمرن على Coding Interview Prep مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Coding Interview Prep؟
لا تُشترط خبرة سابقة. Coding Interview Prep على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «إخراج دفعي بالطريقة الصحيحة»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Coding Interview Prep هذا؟
نعم. كل درس في Coding Interview Prep يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مواجهة input() وsys.stdin
- تحليل أعداد كثيرة في سطر واحد
- إخراج دفعي بالطريقة الصحيحة
- قراءة N سطرًا والحالات الطرفية