אתה יכול לתרגל ללמוד כיצד לתכנת על ידי ביצוע פרויקטים קצרים של שורת פקודה ב- Python. אחד הפרויקטים שאתה יכול לעשות הוא חידון אינטראקטיבי, שבו אתה יכול לשאול את המשתמש סוגים שונים של שאלות.

שאלות שאתה יכול לשאול כוללות שאלות ברירות רבות, או שאלות הדורשות תשובות בכתב. אתה יכול גם לשאול שאלות שיש להן תשובות נכונות חלופיות. אתה יכול אפילו לגרום לתוכנית שלך לתת רמזים למשתמש.

כיצד ליצור את סקריפט Python ולהוסיף את שאלת החידון הראשונה שלך

צור קובץ Python והוסף את השאלה הראשונה שלך. אם לא קודדת ב-Python לפני כן, יש הרבה קורסים ומשאבים שבהם אתה יכול למד Python בחינם.

  1. צור קובץ טקסט חדש בשם "InteractiveQuiz.py".
  2. פתח את הקובץ באמצעות כל עורך טקסט, והוסף את הצהרת ההדפסה הראשונה שלך כדי לקבל את פני המשתמש לחידון.
    הדפס("שלום, ברוכים הבאים לחידון הגיאוגרפיה. ענה על השאלות כפי ש הם מוצגים."
  3. שאל את השאלה הראשונה למשתמש. השתמש בפונקציה input() כדי להמתין לתגובת המשתמש, ואחסן את הקלט שלו במשתנה "userInput".
    הדפס("שאלה 1. איזו עיר היא בירת אוסטרליה?")
    userInput = input()
  4. הוסף תנאי כדי לבדוק אם הקלט של המשתמש תואם לתשובה הנכונה. אם המשתמש ענה נכון, הצג בפניו הודעה "נכונה". אם לא, הצג את התשובה הנכונה.
    instagram viewer
    if (userInput.lower() == "קנברה".נמוך יותר()):
    print("זה הוא נכון!")
    אַחֵר:
    print("מצטער, התשובה הנכונה הוא קנברה.")
  5. כדי להריץ את החידון שלך ולבדוק שהשאלה שלך עובדת, פתח את שורת הפקודה ונווט אל המיקום של קובץ Python שלך. לדוגמה, אם אחסנת את הקובץ שלך בספרייה בשם Desktop, הפקודה תהיה:
    CD שולחן עבודה
  6. הפעל את פקודת python כדי לבצע את החידון.
    פִּיתוֹןחידון אינטראקטיבי.py
  7. ספק תשובה לשאלת החידון.

כיצד להוסיף שאלות מרובות לחידון

אתה יכול להוסיף מספר שאלות על ידי חזרה על הקוד שלמעלה. עם זאת, זה יהפוך את הקוד שלך ארוך מיותר וקשה יותר לעדכן. לגישה טובה יותר, אחסן מידע על השאלה באובייקט במקום זאת.

  1. בחלק העליון של קובץ Python, הוסף מחלקה כדי לאחסן מידע על שאלת חידון. אם לא עשית זאת בעבר, תוכל ללמוד עוד כיצד לעשות זאת ליצור מחלקה ב- Python.
    מעמדשְׁאֵלָה:
    def__init__(עצמי, שאלהטקסט, תשובה):
    עצמי.questionText = questionText
    עצמי.תשובה = תשובה

    def__repr__(עצמי):
    לַחֲזוֹר '{'+ self.questionText +', '+ self.answer +'}'

  2. מתחת לכיתה, הוסף מערך של אובייקטי שאלה. אובייקטים אלו יאחסנו את טקסט השאלה שהחידון מציג למשתמש, יחד עם התשובה הנכונה.
    quizQuestions = [
    שְׁאֵלָה("שאלה 1. איזו עיר היא בירת אוסטרליה", "קנברה"),
    שְׁאֵלָה("שאלה 2. איזו עיר היא בירת יפן", "טוקיו"),
    שְׁאֵלָה("שאלה 3. כמה איים יש בפיליפינים", "7100")
    ]
  3. החלף את הצהרת if הקיימת ואת קוד קלט המשתמש. במקום זאת, השתמש בלולאת for כדי לחזור על מערך quizQuestions. עבור כל שאלה, הצג את השאלה והשווה את הקלט של המשתמש עם התשובה הנכונה.
    לשאלה בשאלון שאלות:
    הדפס (ו"{question.questionText}?")
    userInput = input()
    if (userInput.lower() == question.answer.lower()):
    print("זה הוא נכון!")
    אַחֵר:
    print (ו"סליחה, התשובה הנכונה הוא {שאלה תשובה}.")

כיצד להוסיף שאלות מרובות בחירה

אתה יכול להרחיב את שיעור השאלות כדי להתאים לשאלות ברירות רבות.

  1. שנה את מחלקת השאלות בראש הקובץ. הוסף תכונה אופציונלית בשם multipleChoiceOptions.
    מעמדשְׁאֵלָה:
    def__init__(self, questionText, answer, multipleChoiceOptions=None):
    עצמי.questionText = questionText
    עצמי.תשובה = תשובה
    עצמי.multipleChoiceOptions = multipleChoiceOptions

    def__repr__(עצמי):
    לַחֲזוֹר '{'+ self.questionText +', '+ self.answer +', '+ str (self.multipleChoiceOptions) +'}'

  2. הוסף שאלה נוספת למערך quizQuestions. אחסן כמה אפשרויות בחירה עבור השאלה.
    quizQuestions = [
    שְׁאֵלָה("שאלה 1. איזו עיר היא בירת אוסטרליה", "קנברה"),
    שְׁאֵלָה("שאלה 2. איזו עיר היא בירת יפן", "טוקיו"),
    שְׁאֵלָה("שאלה 3. כמה איים יש בפיליפינים", "7100"),
    שְׁאֵלָה("שאלה 4. איזו מדינה לוקחת הכי הרבה גוש קרקע", "ב", ["(א) ארצות הברית", "(ב) רוסיה", "(ג) אוסטרליה", "(ד) אנטארקטיקה"]),
    ]
  3. שנה את החלק בלולאת for שמציג את השאלה למשתמש. אם קיימות אפשרויות בחירה מרובות עבור השאלה, הצג אותן לאחר השאלה, ולפני שליפת הקלט של המשתמש.
    לשאלה בשאלון שאלות:
    אם (question.multipleChoiceOptions != אף אחד):
    הדפס (ו"{question.questionText}?")
    לאוֹפְּצִיָהבשְׁאֵלָה.multipleChoiceOptions:
    הדפס(אוֹפְּצִיָה)
    userInput = input()
    אַחֵר:
    הדפס (ו"{question.questionText}?")
    userInput = input()

    if (userInput.lower() == question.answer.lower()):
    print("זה הוא נכון!")
    אַחֵר:
    print (ו"סליחה, התשובה הנכונה הוא {שאלה תשובה}.")

כיצד להוסיף שאלה שיש לה תשובות נכונות חלופיות

לפעמים יש שאלות שבהן המשתמש יכול להקליד חלק מהתשובה, אך מבחינה טכנית היא עדיין נכונה.

לדוגמה, אחת השאלות בחידון שלך יכולה להיות "באיזה חצי כדור נמצאת יפן?". במקרה זה, המשתמש יכול להקליד "צפוני", "צפוני" או "חצי כדור צפוני", ועדיין להיות נכון.

  1. הוסף תכונה אופציונלית נוספת למחלקה שאלה. תכונה זו תכיל את כל התשובות הנכונות החלופיות האפשריות שהמשתמש יכול להזין.
    מעמדשְׁאֵלָה:
    def__init__(self, questionText, answer, multipleChoiceOptions=None, alternateAnswers=None):
    עצמי.questionText = questionText
    עצמי.תשובה = תשובה
    עצמי.multipleChoiceOptions = multipleChoiceOptions
    עצמי.alternateAnswers = alternateAnswers

    def__repr__(עצמי):
    לַחֲזוֹר '{'+ self.questionText +', '+ self.answer +', '+ str (self.multipleChoiceOptions) +', '+ str (self.alternateAnswers) +'}'

  2. הוסף שאלה נוספת למערך quizQuestions. הוסף את "חצי הכדור הצפוני" כתשובה הנכונה. הוסף "צפון" ו"צפוני" כתשובות נכונות חלופיות.
    quizQuestions = [
    #...
    שְׁאֵלָה("שאלה 5. באיזה חצי כדור נמצאת יפן", "חצי הכדור הצפוני", [], ["צָפוֹן", "צְפוֹנִי"]),
    ]
  3. הוסף תנאי נוסף להצהרת if שבודק אם המשתמש הזין תשובה נכונה חלופית.
    if (userInput.lower() == question.answer.lower()):
    print("זה הוא נכון!")
    אליף (question.alternateAnswers != אף אחדו userInput.lower() ב question.alternateAnswers):
    print("זה הוא נכון!")
    אַחֵר:
    print (ו"סליחה, התשובה הנכונה הוא {שאלה תשובה}.")

כיצד לתת למשתמש רמזים

אתה יכול לשנות את הסקריפט כך שהמשתמש לא יוכל להתקדם לשלב הבא עד שיקבל את השאלה הנוכחית נכונה. במקרה זה, הוסף משתנה כדי לספור כמה פעמים המשתמש הזין תשובה שגויה. לאחר שלושה ניחושים שגויים, אתה יכול לתת למשתמש רמז.

  1. שנה את מחלקת השאלות כדי להשתמש בתכונת רמז חדשה.
    מעמדשְׁאֵלָה:
    def__init__(self, questionText, answer, hint=None, multipleChoiceOptions=None, alternateAnswers=None):
    עצמי.questionText = questionText
    עצמי.תשובה = תשובה
    עצמירמז = רמז
    עצמי.multipleChoiceOptions = multipleChoiceOptions
    עצמי.alternateAnswers = alternateAnswers

    def__repr__(עצמי):
    לַחֲזוֹר '{'+ self.questionText +', '+ self.answer +', '+ self.hint +', '+ str (self.multipleChoiceOptions) +', '+ str (self.alternateAnswers) +'}'

  2. הוסף רמזים לכל השאלות בחידון.
    quizQuestions = [
    שְׁאֵלָה("שאלה 1. איזו עיר היא בירת אוסטרליה", "קנברה", "מתחיל עם C"),
    שְׁאֵלָה("שאלה 2. איזו עיר היא בירת יפן", "טוקיו", "מתחיל עם T"),
    שְׁאֵלָה("שאלה 3. כמה איים יש בפיליפינים", "7100", "מספר בין 7000 ל-8000"),
    שְׁאֵלָה("שאלה 4. איזו מדינה לוקחת הכי הרבה גוש קרקע", "ב", "המדינה משתרעת על פני שתי יבשות", ["(א) ארצות הברית", "(ב) רוסיה", "(ג) אוסטרליה", "(ד) אנטארקטיקה"]),
    שְׁאֵלָה("שאלה 5. באיזה חצי כדור נמצאת יפן", "חצי הכדור הצפוני", "החצי העליון של כדור הארץ", [], ["צָפוֹן", "צְפוֹנִי"]),
    ]
  3. הסר את הצהרות ה-if שבודקות אם המשתמש ענה נכון על השאלה. החלף את אלה בלולאת while. לולאת ה-while תמשיך בלולאה עד שהמשתמש יקבל את התשובה הנכונה. בתוך לולאת ה-while, הוסף ספירה שתציג את הרמז ברגע שהמשתמש השגוי שלוש פעמים.
    לשאלה בשאלון שאלות:
    אם (question.multipleChoiceOptions != אף אחד):
    הדפס (ו"{question.questionText}?")
    לאוֹפְּצִיָהבשְׁאֵלָה.multipleChoiceOptions:
    הדפס(אוֹפְּצִיָה)
    userInput = input()
    אַחֵר:
    הדפס (ו"{question.questionText}?")
    userInput = input()
    ספירה = 0
    בזמן (userInput.lower() != question.answer.lower()):
    אם (question.alternateAnswers != אף אחדו userInput.lower() ב question.alternateAnswers):
    לשבור;
    ספירה = ספירה + 1
    אם (ספירה >= 3):
    הדפס (ו"רמז: {question.hint}.")
    userInput = input()
    אַחֵר:
    print("זה הואלֹא נכון, לְנַסוֹת שוב.")
    userInput = input()

    print("זה הוא נכון!")

  4. הפעל מחדש את החידון שלך בשורת הפקודה באמצעות הפקודה python.
    פִּיתוֹןחידון אינטראקטיבי.py
  5. ענו על שאלות לחידון.

יצירת יישומים קטנים באמצעות Python

אחד הפרויקטים שאתה יכול לעשות תוך כדי לימוד כיצד לקודד ב-Python הוא חידון אינטראקטיבי. בחידון תוכלו להציג למשתמש סוגים שונים של שאלות.

אתה יכול לאחסן מידע על שאלות החידון באובייקט, כדי למנוע ממך לחזור על הקוד שלך עבור כל שאלה.

כדי לשפר את הכישורים שלך ב-Python, מומלץ לתרגל תרגילים ודוגמאות שונות. אתה יכול לעיין בדוגמאות אחרות של Python שיכולות לעזור לך ללמוד.