يمكنك التدرب على تعلم كيفية البرمجة عن طريق إنشاء مشاريع سطر أوامر قصيرة في بايثون. أحد المشاريع التي يمكنك القيام بها هو اختبار تفاعلي ، حيث يمكنك طرح أنواع مختلفة من الأسئلة على المستخدم.
تتضمن الأسئلة التي يمكنك طرحها أسئلة متعددة الخيارات ، أو أسئلة تتطلب إجابات مكتوبة. يمكنك أيضًا طرح أسئلة لها إجابات صحيحة بديلة. يمكنك حتى جعل برنامجك يعطي تلميحات للمستخدم.
كيفية إنشاء نص بايثون وإضافة سؤال الاختبار الأول
قم بإنشاء ملف Python وأضف سؤالك الأول. إذا لم تكن قد قمت بالتشفير في Python من قبل ، فهناك العديد من الدورات والموارد المتاحة حيث يمكنك ذلك تعلم بايثون مجانا.
- قم بإنشاء ملف نصي جديد يسمى "InteractiveQuiz.py".
- افتح الملف باستخدام أي محرر نصوص ، وأضف بيان الطباعة الأول للترحيب بالمستخدم في الاختبار.
مطبعة("مرحبًا بك في اختبار الجغرافيا. أجب على الأسئلة كما يتم تقديمها. ")
- اطرح السؤال الأول على المستخدم. استخدم وظيفة input () لانتظار استجابة المستخدم ، وتخزين مدخلاتهم في المتغير "userInput".
مطبعة("السؤال رقم 1. ما المدينة هي عاصمة استراليا؟")
مدخلات المستخدم = المدخلات () - أضف شرطًا للتحقق مما إذا كان إدخال المستخدم يطابق الإجابة الصحيحة. إذا أجاب المستخدم بشكل صحيح ، اعرض له رسالة "صحيحة". إذا لم يكن كذلك ، اعرض الإجابة الصحيحة.
إذا (userInput.lower () == "كانبرا".أدنى()):
طباعة ("That هو صحيح!")
آخر:
print ("عذرًا ، الإجابة الصحيحة هو كانبيرا. ") - لتشغيل الاختبار الخاص بك واختبار نجاح سؤالك ، افتح سطر الأوامر وانتقل إلى موقع ملف Python الخاص بك. على سبيل المثال ، إذا قمت بتخزين ملفك في دليل باسم سطح المكتب ، فسيكون الأمر:
قرص مضغوط سطح المكتب
- قم بتشغيل أمر python لتنفيذ الاختبار.
الثعبانInteractiveQuiz.السنة التحضيرية
- قدم إجابة لسؤال الاختبار.
كيفية إضافة أسئلة متعددة إلى الاختبار
يمكنك إضافة عدة أسئلة بتكرار الكود أعلاه. ومع ذلك ، فإن هذا سيجعل شفرتك طويلة بشكل غير ضروري ويصعب تحديثها. للحصول على نهج أفضل ، قم بتخزين المعلومات حول السؤال في كائن بدلاً من ذلك.
- في الجزء العلوي من ملف Python ، أضف فصلًا لتخزين المعلومات حول سؤال الاختبار. إذا لم تكن قد فعلت ذلك من قبل ، فيمكنك معرفة المزيد حول كيفية القيام بذلك إنشاء فصل دراسي في بايثون.
صف دراسيسؤال:
def__فيه__(نفس ، سؤال نص ، إجابة):
الذات.questionText = questionText
الذات.answer = الجوابdef__إعداد__(الذات):
إرجاع '{'+ self.questionText +', '+ الجواب الذاتي +'}' - أسفل الفصل ، أضف مصفوفة من كائنات الأسئلة. ستخزن هذه الكائنات نص السؤال الذي يعرضه الاختبار للمستخدم ، إلى جانب الإجابة الصحيحة.
quizQuestions = [
سؤال("السؤال رقم 1. ما مدينة هي عاصمة استراليا", "كانبرا"),
سؤال("السؤال 2. ما هي المدينة عاصمة اليابان", "طوكيو"),
سؤال("السؤال 3. كم عدد الجزر في الفلبين", "7100")
] - استبدل عبارة if الموجودة وكود إدخال المستخدم. بدلاً من ذلك ، استخدم حلقة for للتكرار عبر صفيف quizQuestions. لكل سؤال ، اعرض السؤال وقارن بين مدخلات المستخدم والإجابة الصحيحة.
للسؤال في الاختبار
طباعة (ص"{question.questionText}؟")
مدخلات المستخدم = المدخلات ()
إذا (userInput.lower () == question.answer.lower ()):
طباعة ("That هو صحيح!")
آخر:
print (f "آسف ، الإجابة الصحيحة هو {جواب السؤال}.")
كيفية إضافة أسئلة الاختيار من متعدد
يمكنك توسيع فئة السؤال لتتوافق مع أسئلة الاختيار من متعدد.
- قم بتعديل فئة السؤال في أعلى الملف. أضف سمة اختيارية تسمى MultipleChoiceOptions.
صف دراسيسؤال:
def__فيه__(self، questionText، answer، multipleChoiceOptions = None):
الذات.questionText = questionText
الذات.answer = الجواب
الذات.multipleChoiceOptions = multipleChoiceOptionsdef__إعداد__(الذات):
إرجاع '{'+ self.questionText +', '+ الجواب الذاتي +', '+ str (self.multipleChoiceOptions) +'}' - أضف سؤالاً آخر إلى مجموعة quizQuestions. قم بتخزين بعض خيارات الاختيار من متعدد للسؤال.
quizQuestions = [
سؤال("السؤال رقم 1. ما مدينة هي عاصمة استراليا", "كانبرا"),
سؤال("السؤال 2. ما هي المدينة عاصمة اليابان", "طوكيو"),
سؤال("السؤال 3. كم عدد الجزر في الفلبين", "7100"),
سؤال("السؤال 4. البلد الذي يأخذ أكبر مساحة من الأرض", "ب", ["(أ) الولايات المتحدة", "(ب) روسيا", "(ج) أستراليا", "(د) القارة القطبية الجنوبية"]),
] - قم بتعديل جزء الحلقة for التي تعرض السؤال للمستخدم. في حالة وجود خيارات متعددة الخيارات للسؤال ، قم بعرضها بعد السؤال وقبل جلب مدخلات المستخدم.
للسؤال في الاختبار
إذا (question.multipleChoiceOptions! = لا أحد):
طباعة (ص"{question.questionText}؟")
إلى عن علىاختيارفيسؤال.multipleChoiceOptions:
مطبعة(اختيار)
مدخلات المستخدم = المدخلات ()
آخر:
طباعة (ص"{question.questionText}؟")
مدخلات المستخدم = المدخلات ()إذا (userInput.lower () == question.answer.lower ()):
طباعة ("That هو صحيح!")
آخر:
print (f "آسف ، الإجابة الصحيحة هو {جواب السؤال}.")
كيفية إضافة سؤال يحتوي على إجابات صحيحة بديلة
في بعض الأحيان توجد أسئلة يمكن للمستخدم أن يكتبها في جزء من الإجابة ، لكنها لا تزال صحيحة من الناحية الفنية.
على سبيل المثال ، يمكن أن يكون أحد الأسئلة في اختبارك "في أي نصف الكرة الأرضية تقع اليابان؟". في هذه الحالة ، يمكن للمستخدم كتابة "شمال" أو "شمالي" أو "نصف الكرة الشمالي" ، ويظل صحيحًا.
- أضف سمة اختيارية أخرى إلى فئة السؤال. ستحتوي هذه السمة على أي إجابات صحيحة بديلة يمكن للمستخدم إدخالها.
صف دراسيسؤال:
def__فيه__(self، questionText، answer، multipleChoiceOptions = None، alternateAnswers = None):
الذات.questionText = questionText
الذات.answer = الجواب
الذات.multipleChoiceOptions = multipleChoiceOptions
الذات.alternateAnswers = alternateAnswersdef__إعداد__(الذات):
إرجاع '{'+ self.questionText +', '+ الجواب الذاتي +', '+ str (self.multipleChoiceOptions) +', '+ str (self.alternateAnswers) +'}' - أضف سؤالاً آخر إلى مجموعة quizQuestions. أضف "نصف الكرة الشمالي" كإجابة صحيحة. أضف "الشمال" و "الشمالية" كإجابات صحيحة بديلة.
quizQuestions = [
#...
سؤال("السؤال 5. في أي نصف الكرة الأرضية تقع اليابان", "نصف الكرة الشمالي", [], ["شمال", "شمالي"]),
] - أضف شرطًا آخر إلى عبارة if التي تتحقق مما إذا كان المستخدم قد أدخل إجابة صحيحة بديلة.
إذا (userInput.lower () == question.answer.lower ()):
طباعة ("That هو صحيح!")
أليف (question.alternateAnswers! = لا أحدو userInput.lower () في إجابات بديلة):
طباعة ("That هو صحيح!")
آخر:
print (f "آسف ، الإجابة الصحيحة هو {جواب السؤال}.")
كيف تعطي المستخدم تلميحات
يمكنك تعديل البرنامج النصي بحيث لا يتمكن المستخدم من التقدم إلى المرحلة التالية حتى يصحح السؤال الحالي. في هذه الحالة ، أضف متغيرًا لحساب عدد المرات التي أدخل فيها المستخدم إجابة خاطئة. بعد ثلاثة تخمينات غير صحيحة ، يمكنك إعطاء المستخدم تلميحًا.
- قم بتعديل فئة السؤال لاستخدام سمة تلميح جديدة.
صف دراسيسؤال:
def__فيه__(self، questionText، answer، hint = None، multipleChoiceOptions = None، alternateAnswers = None):
الذات.questionText = questionText
الذات.answer = الجواب
الذات.hint = تلميح
الذات.multipleChoiceOptions = multipleChoiceOptions
الذات.alternateAnswers = alternateAnswersdef__إعداد__(الذات):
إرجاع '{'+ self.questionText +', '+ الجواب الذاتي +', '+ تلميح ذاتي +', '+ str (self.multipleChoiceOptions) +', '+ str (self.alternateAnswers) +'}' - أضف تلميحات لجميع الأسئلة في الاختبار.
quizQuestions = [
سؤال("السؤال رقم 1. ما مدينة هي عاصمة استراليا", "كانبرا", "يبدأ بحرف C"),
سؤال("السؤال 2. ما هي المدينة عاصمة اليابان", "طوكيو", "يبدأ بحرف T."),
سؤال("السؤال 3. كم عدد الجزر في الفلبين", "7100", "رقم بين 7000 و 8000"),
سؤال("السؤال 4. البلد الذي يأخذ أكبر مساحة من الأرض", "ب", "تمتد البلاد عبر قارتين", ["(أ) الولايات المتحدة", "(ب) روسيا", "(ج) أستراليا", "(د) القارة القطبية الجنوبية"]),
سؤال("السؤال 5. في أي نصف الكرة الأرضية تقع اليابان", "نصف الكرة الشمالي", "النصف العلوي من الأرض", [], ["شمال", "شمالي"]),
] - أزل عبارات if التي تتحقق مما إذا كان المستخدم قد أجاب على السؤال بشكل صحيح. استبدل هذه مع حلقة while. ستستمر حلقة while loop باستمرار حتى يحصل المستخدم على الإجابة الصحيحة. داخل حلقة while loop ، أضف عددًا سيعرض التلميح بمجرد أن يحصل المستخدم على إجابة خاطئة ثلاث مرات.
للسؤال في الاختبار
إذا (question.multipleChoiceOptions! = لا أحد):
طباعة (ص"{question.questionText}؟")
إلى عن علىاختيارفيسؤال.multipleChoiceOptions:
مطبعة(اختيار)
مدخلات المستخدم = المدخلات ()
آخر:
طباعة (ص"{question.questionText}؟")
مدخلات المستخدم = المدخلات ()
العد = 0
في حين (userInput.lower ()! = question.answer.lower ()):
إذا (question.alternateAnswers! = لا أحدو userInput.lower () في إجابات بديلة):
فترة راحة;
العد = العد + 1
إذا (عد >= 3):
طباعة (ص"تلميح: {question.hint}.")
مدخلات المستخدم = المدخلات ()
آخر:
طباعة ("That هوليس صحيح، محاولة تكرارا.")
مدخلات المستخدم = المدخلات ()طباعة ("That هو صحيح!")
- أعد الاختبار في سطر الأوامر باستخدام الأمر python.
الثعبانInteractiveQuiz.السنة التحضيرية
- أجب عن الأسئلة في الاختبار.
إنشاء تطبيقات صغيرة باستخدام بايثون
أحد المشاريع التي يمكنك القيام بها أثناء تعلم كيفية البرمجة في Python هو اختبار تفاعلي. في الاختبار ، يمكنك تقديم أنواع مختلفة من الأسئلة للمستخدم.
يمكنك تخزين معلومات حول أسئلة الاختبار في كائن ، لمنعك من تكرار التعليمات البرمجية الخاصة بك لكل سؤال.
لتحسين مهاراتك في بايثون ، من الجيد أن تمارس تمارين وأمثلة مختلفة. يمكنك إلقاء نظرة على أمثلة Python الأخرى التي يمكن أن تساعدك على التعلم.