על ידי שרלין חאן

בנה את המשחק הפשוט הזה כדי לגבש את מושגי התכנות שלך ב-Python.

קוראים כמוך עוזרים לתמוך ב-MUO. כאשר אתה מבצע רכישה באמצעות קישורים באתר שלנו, אנו עשויים להרוויח עמלת שותף. קרא עוד.

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

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

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

כיצד ליצור מספר אקראי

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

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

  1. צור קובץ חדש בשם מספר-ניחוש-משחק.py. פתח את הקובץ באמצעות כל עורך טקסט, כגון Visual Studio או Atom.
  2. instagram viewer
  3. בחלק העליון של הקובץ, ייבא את ה אַקרַאִי מודול:
    יְבוּא אַקרַאִי
  4. להשתמש ב אַקרַאִי של מודול randint() שיטה ליצירת מספר אקראי בין 1 ל-50:
    טווח_ניחוש = 50
    answer = random.randint(1, טווח_ניחוש)
  5. התחל את המשחק ובקש מהשחקן לנחש את המספר:
    הדפס("ברוכים הבאים למשחק ניחוש המספרים!")
    הדפס("")
    userInput = input("נחש מספר בין 1 ל" + str (guess_range) + ": ")
    guess = int (UserInput)

כיצד לבדוק אם המשתמש ניחש את המספר הנכון

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

  1. בעוד שהמשתמש עדיין לא ניחש את התשובה הנכונה, בקש ממנו שוב להזין קלט חדש. הקפד להכניס קוד מקונן כלשהו, ​​מכיוון שהמבנה של Python תלוי בהזחה נכונה:
    לנחש = ""
    בזמן נחש != תשובה:
    userInput = input("נחש מספר בין 1 ל" + str (guess_range) + ": ")
    guess = int (UserInput)
  2. אם הקוד מופעל מעבר ללולאת while, זה אומר שהם ניחשו את התשובה הנכונה:
    הדפס("מזל טוב! ניחשתם את המספר הנכון. ניצחת!") 

כיצד להוסיף מספר מוגבל של ניחושים

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

  1. הכריז על משתנה חדש בתחילת הקובץ, כדי לעקוב אחר מספר הניחושים המותרים של השחקן. הגדר אותו ל-10, מלכתחילה:
    ניחושים_מותרים = 10
  2. שנה את הצהרת while ללולאת for, שחוזרת רק עבור כמות הניחושים המוגבלת:
    ל אני ב טווח (ניחושים_מותרים):
    userInput = input("נחש מספר בין 1 ל" + str (guess_range) + ": ")
    guess = int (UserInput)
  3. בתוך לולאת for, אם אחד מהניחושים הוא התשובה הנכונה, צא מהלולאת for:
    אם לנחש == תשובה:
    הדפס("מזל טוב! ניחשתם את המספר הנכון. ניצחת!")
    לשבור
  4. ובכל זאת, בתוך לולאת for, הוסף עוד משפט if כדי לבדוק אם השחקן הגיע למגבלת מספר הניחושים שלו. אם כן, סיים את המשחק:
    אם (i == ניחושים_מותרים - 1):
    הדפס("סליחה, נגמרו לך הניחושים. הפסדת!")

כיצד להוסיף רמזים למשחק

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

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

  1. שנה את הצהרת if שאומרת למשתמש אם הוא זכה. אם הם עדיין לא ניחשו את התשובה הנכונה, יידעו אותם אם התשובה בפועל גבוהה או נמוכה יותר.
    אם לנחש == תשובה:
    הדפס("מזל טוב! ניחשתם את המספר הנכון. ניצחת!")
    לשבור
    אליף נחש < תשובה:
    הדפס("המספר גבוה יותר".)
    אַחֵר:
    הדפס("המספר נמוך יותר".)
  2. הוסף עוד הצהרת if כדי להוסיף רמזים נוספים. זה יגיד להם אם הם מתקרבים או "מתחממים" למספר. השתמש בפונקציה המוחלטת כדי לקבוע את המרחק בין הניחוש לתשובה. לדוגמה, אם הם נמצאים במרחק של פחות מ-10 מספרים מהתשובה, המשחק ידפיס "אתה חם":
    אם abs (נחש - תשובה) <= 10:
    הדפס("חם לך!")
    אליף abs (נחש - תשובה) <= 20:
    הדפס("אתה מתחמם.")
    אליף abs (נחש - תשובה) <= 30:
    הדפס("אתה קר.")
    אַחֵר:
    הדפס("אתה קופא.")

כיצד לשנות את הקושי של המשחק

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

  1. בתחילת המשחק, בקשו מהמשתמש לבחור רמת קושי:
    הדפס("ברוכים הבאים למשחק ניחוש המספרים!")
    הדפס("")
    בזמןנָכוֹן:
    רמה = קלט("בחר דרגת קושי (קל, בינוני, קשה):").נמוך יותר()
  2. הוסף אימות מסוים כדי לוודא שהשחקן מקליד רק את האפשרויות "קל", "בינוני" או "קשה". אם המשתמש יזין תגובה לא חוקית, המשחק יבקש ממנו להיכנס שוב לרמת קושי.
    אם רָמָה ב ["קַל", "בינוני", "קָשֶׁה"]:
    לשבור
    אַחֵר:
    הדפס("קלט לא תקין. אנא בחר 'קל', 'בינוני' או 'קשה'.")
  3. לפני יצירת המספר האקראי, השתמש בקושי של השחקן כדי לקבוע כמה ניחושים יכולים להיות לו. אתה יכול גם להשתמש ברמת הקושי שנבחרה כדי לקבוע כמה גדול טווח הניחוש:
    אם רמה == "קַל":
    טווח_ניחוש = 50
    ניחושים_מותרים = 20
    אליף רמה == "בינוני":
    טווח_ניחוש = 100
    ניחושים_מותרים = 15
    אַחֵר:
    טווח_ניחוש = 150
    ניחושים_מותרים = 10

    answer = random.randint(1, טווח_ניחוש)

איך לשחק את המשחק

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

  1. פתח שורת פקודה או מסוף, ונווט לתיקיה שבה אחסנת את סקריפט Python שלך. לדוגמה, אם אחסנת את הסקריפט שלך בשולחן העבודה, הפקודה תיראה דומה לזה:
    cd C:\Users\Sharl\Desktop
  2. להשתמש ב פִּיתוֹן פקודה להפעלת סקריפט Python שלך:
    python number-guessing-game.py
  3. הזן דרגת קושי.
  4. הזן מספרים בשורת הפקודה כדי לנסות ולנחש את המספר.

למד תכנות על ידי יצירת משחקים פשוטים

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

הירשם לניוזלטר שלנו

הערות

לַחֲלוֹקצִיוּץלַחֲלוֹקלַחֲלוֹקלַחֲלוֹק
עותק
אימייל
לַחֲלוֹק
לַחֲלוֹקצִיוּץלַחֲלוֹקלַחֲלוֹקלַחֲלוֹק
עותק
אימייל

הקישור הועתק ללוח

נושאים קשורים

  • תִכנוּת
  • פִּיתוֹן
  • פיתוח משחק

על הסופר

שרלין חאן (82 מאמרים שפורסמו)

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