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

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

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

המודול האקראי וה-Tkinter

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

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

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

instagram viewer
pip להתקין tkinter

כיצד לבנות משחק ערבוביה של מילים באמצעות Python

אתה יכול למצוא את קוד המקור של משחק Word Jumble באמצעות Python כאן מאגר GitHub.

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

מ tkinter יְבוּא *
מ אַקרַאִי יְבוּא בְּחִירָה
מ אַקרַאִי יְבוּא לְעַרְבֵּב

root = Tk()
root.title('משחק ערבוביה')
root.geometry("700x500")
root.configure (background='אקווה')

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

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

my_label = תווית (שורש, טקסט="", גופן=("אריאל", 48), bg='אקווה')
my_label.pack (pady=20)

defערבב():
hint_label.config (טקסט='')
גלוֹבָּלִי hint_count
hint_count = 0
entry_answer.delete(0, END)
answer_label.config (טקסט='', bg='אקווה')

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

 פירות = ['תפוח עץ', 'בננה', 'תּוּת', 'אבטיח', 'קיווי']
גלוֹבָּלִי מִלָה
מילה = בחירה (פירות)
break_apart_word = רשימה (מילה)
ערבב (מילה_שבר_נפרד)
גלוֹבָּלִי ערבב_מילה
ערבב_מילה = ''

ל מִכְתָב ב מילה_ניתוק:
shuffled_word += אות

my_label.config (text=shuffled_word)

נסה לטעון קבוצת מילים מקובץ כהרחבה לפרויקט זה. קובץ המילון—/usr/share/dict/words ב-Linux/macOS—הוא מקור מצוין למילים.

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

defתשובה():
אם word == entry_answer.get():
answer_label.config (טקסט="תשובה נכונה!", bg='אקווה', fg='ירוק')
אַחֵר:
answer_label.config (טקסט="תשובה שגויה, אנא נסה שוב.", bg='אקווה', fg='אָדוֹם')

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

defרֶמֶז(לספור):
גלוֹבָּלִי hint_count
hint_count = ספירה
word_length = len (מילה)

אם count < word_length:
hint_label.config (טקסט=ו'{תווית_רמז["טֶקסט"]}{ספירת מילים]}', bg='אקווה')
hint_count += 1

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

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

entry_answer = כניסה (שורש, גופן=("אריאל", 24))
entry_answer.pack (pady=20)

button_frame = מסגרת (שורש, bg='אקווה')
button_frame.pack (pady=20)

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

להשתמש ב רֶשֶׁת() מנהל למקם את הכפתורים האלה בשורה אחת ובשלוש עמודות שונות. אתה יכול לציין ריפוד כדי להוסיף רווח בין הכפתורים.

answer_button = לחצן (button_frame, text="תשובה", command=answer, bg='תפוז', רוחב=8, גופן=10)
answer_button.grid (שורה=0, עמודה=0, padx=10)

my_button = Button (button_frame, text="בחר מילה אחרת", command=shuffler, bg='תפוז', רוחב=15, גופן=10)
my_button.grid (שורה=0, עמודה=1, padx=10)

hint_button = כפתור (button_frame, text="רֶמֶז", פקודה=למבדה: hint (hint_count), bg='תפוז', רוחב=5, גופן=10)
hint_button.grid (שורה=0, עמודה=2, padx=10)

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

answer_label = תווית (שורש, טקסט='', גופן=("אריאל", 22))
answer_label.pack (pady=20)

hint_label = תווית (שורש, טקסט='', גופן=("אריאל", 22), bg='אקווה')
hint_label.pack (pady=10)

התקשר לפונקציה shuffler() כדי להגדיר את המשחק. אז תתקשר mainloop() להפעיל את לולאת האירועים של Tkinter ולהאזין לאירועים (כגון לחיצות על כפתורים) עד לסגירת החלון.

shuffler()
root.mainloop()

חבר את כל הקוד יחד ושחק את משחק המילים ערבוביה בכל זמן ובכל מקום.

פלט דוגמה של משחק המילים ערבוביה

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

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

משחקי מילים באמצעות Python

באמצעות Python תוכלו לפתח מגוון רחב ומרגש של משחקי מילים. דוגמאות כוללות Scrabble, Hangman, תשבצים, Mad Libs ו-Anagrams. משחקי מילים אלה יכולים להיות מבוססי מסוף או מבוססי GUI, כפי שראית כאן.

עם Tkinter, אתה יכול ליצור משחקי GUI בקלות רבה. כל שעליכם לעשות הוא לייבא את המודול, ליצור חלון, להוסיף ווידג'טים ולהפעיל את לולאת האירוע. למשחקים מתקדמים יותר, אתה יכול לחקור את מודולי התלת-ממד Pygame, Kivy ו-Panda.