/ / Xây dựng một trò chơi Word Jumble bằng Python

Xây dựng một trò chơi Word Jumble bằng Python

Nếu bạn đang tìm kiếm một trò giải trí thú vị, thì từ lộn xộn là một lựa chọn tốt, để chơi và lập trình. Được cung cấp bởi mô-đun Tkinter của Python, bạn có thể xây dựng và chơi trò chơi thời thơ ấu này trong một ứng dụng GUI tiện lợi.


Chương trình hiển thị một từ lộn xộn mà bạn cần sắp xếp lại về dạng ban đầu. Nếu gặp khó khăn, bạn có thể nhấp vào nút Gợi ý để khám phá từng chữ cái một. Đoán từ chính xác và giành chiến thắng lớn!


Mô-đun Ngẫu nhiên và Tkinter

Mô-đun Ngẫu nhiên là một mô-đun Python tích hợp được sử dụng để tạo các số giả ngẫu nhiên. Với điều này, bạn có thể tạo các số ngẫu nhiên, chọn các phần tử ngẫu nhiên từ danh sách, xáo trộn nội dung của danh sách, v.v.

Mô-đun này có thể giúp bạn xây dựng một số loại ứng dụng, bao gồm mô phỏng tung xúc xắc, trình xáo trộn danh sách hoặc trình tạo mật khẩu ngẫu nhiên. Bạn cũng có thể sử dụng nó để tạo các trò chơi như chơi cricket bằng tay và đoán số.

Tkinter cho phép bạn tạo các ứng dụng máy tính để bàn. Nó cung cấp nhiều tiện ích con như nút, nhãn và hộp văn bản giúp phát triển ứng dụng dễ dàng hơn. Để cài đặt Tkinter, hãy mở terminal và chạy:

 pip install tkinter 

Cách xây dựng trò chơi Word Jumble bằng Python

Bạn có thể tìm mã nguồn của Trò chơi Word Jumble bằng Python trong kho lưu trữ GitHub này.

Nhập các mô-đun Tkinter và Random. Khởi tạo phiên bản Tkinter và hiển thị cửa sổ gốc. Đặt kích thước tính bằng pixel, tiêu đề và màu nền của cửa sổ.

 from tkinter import *
from random import choice
from random import shuffle

root = Tk()
root.title('Word Jumble Game')
root.geometry("700x500")
root.configure(background='aqua')

Xác định tiện ích nhãn để hiển thị từ lộn xộn. Chỉ định cửa sổ mẹ mà bạn muốn đặt nó vào, văn bản sẽ hiển thị, kiểu phông chữ và màu nền. Sắp xếp widget và thêm một số phần đệm vào nó.

Xác định một chức năng, người trộn bài. Định cấu hình nhãn gợi ý để ban đầu hiển thị một chuỗi trống và đặt biến gợi ý chung thành 0. Xóa bất kỳ nội dung nào do chương trình thực hiện trước đó và thay vào đó hiển thị một chuỗi mục nhập.

 my_label = Label(root, text="", font=("Arial", 48), bg='aqua')
my_label.pack(pady=20)

def shuffler():
    hint_label.config(text='')
    global hint_count
    hint_count = 0
    entry_answer.delete(0, END)
    answer_label.config(text='', bg='aqua')

Xác định danh sách các từ sẽ đóng vai trò là bộ dữ liệu cho trò chơi lộn xộn từ. Chọn một từ ngẫu nhiên từ danh sách và lập danh sách các chữ cái riêng lẻ của từ đó. Xáo trộn danh sách và sửa đổi từ bằng cách lặp qua nó và lưu trữ nó trong một chuỗi. Hiển thị từ lộn xộn thông qua nhãn trên màn hình.

     fruits = ['apple', 'banana', 'strawberry', 'watermelon', 'kiwi']
    global word
    word = choice(fruits)
    break_apart_word = list(word)
    shuffle(break_apart_word)
    global shuffled_word
    shuffled_word = ''

    for letter in break_apart_word:
        shuffled_word += letter

    my_label.config(text=shuffled_word)

Hãy thử tải một tập hợp các từ từ một tệp dưới dạng phần mở rộng cho dự án này. Tệp từ điển—/usr/share/dict/words trên Linux/macOS—là một nguồn từ tuyệt vời.

Xác định một chức năng, trả lời. Nếu từ bằng với đầu vào của người dùng thì hiển thị thông báo chiến thắng có màu xanh lá cây. Nếu không, hiển thị rằng đó là câu trả lời sai bằng màu đỏ.

 def answer():
    if word == entry_answer.get():
        answer_label.config(text="Correct answer!", bg='aqua', fg='green')
    else:
        answer_label.config(text="Wrong answer, please try again.", bg='aqua', fg='red')

Xác định một chức năng, gợi ý, để kiểm tra gợi ý toàn cầu. Nếu số đếm nhỏ hơn độ dài của từ, hãy hiển thị chữ cái tiếp theo của câu trả lời đúng. Tăng số lượng ký tự gợi ý để lần chạy hàm tiếp theo, chương trình sẽ hiển thị ký tự tiếp theo.

 def hint(count):
    global hint_count
    hint_count = count
    word_length = len(word)

    if count < word_length:
        hint_label.config(text=f'{hint_label["text"]} {word[count]}', bg='aqua')
        hint_count += 1

Xác định tiện ích Mục nhập để nhận đầu vào từ người dùng. Chỉ định cửa sổ chính mà bạn muốn đặt tiện ích con này vào, cùng với kiểu phông chữ của nó và sắp xếp nó bằng cách cung cấp một số phần đệm để có nhiều không gian.

Xác định một Frame cho các nút. Một khung hoạt động như một thùng chứa chỉ đạo vị trí của các vật dụng khác. Nó sắp xếp bố cục và cung cấp phần đệm bằng cách sử dụng các phần hình chữ nhật trên màn hình. Đặt cửa sổ chính mà bạn muốn đặt khung cùng với màu nền.

 entry_answer = Entry(root, font=("Arial", 24))
entry_answer.pack(pady=20)

button_frame = Frame(root, bg='aqua')
button_frame.pack(pady=20)

Khai báo ba nút: một để hiển thị câu trả lời đúng, một để chọn từ khác và nút còn lại để hiển thị gợi ý. Chỉ định khung bạn muốn đặt từng nút và văn bản sẽ hiển thị. Cũng chuyển chức năng để chạy khi người dùng nhấp vào nó, màu nền, chiều rộng và kích thước phông chữ.

Sử dụng lưới() manager để đặt các nút này trong một hàng và ba cột khác nhau. Bạn có thể chỉ định phần đệm để thêm khoảng cách giữa các nút.

 answer_button = Button(button_frame, text="Answer", command=answer, bg='orange', width=8, font=10)
answer_button.grid(row=0, column=0, padx=10)

my_button = Button(button_frame, text="Pick Another Word", command=shuffler, bg='orange', width=15, font=10)
my_button.grid(row=0, column=1, padx=10)

hint_button = Button(button_frame, text="Hint", command=lambda: hint(hint_count), bg='orange', width=5, font=10)
hint_button.grid(row=0, column=2, padx=10)

Tạo nhãn cho câu trả lời và gợi ý. Chỉ định cửa sổ mẹ mà bạn muốn đặt nhãn vào, văn bản sẽ hiển thị, kiểu phông chữ và sắp xếp nó bằng cách sử dụng đóng gói(). Truyền một giá trị đệm, thócđể đặt nhãn tốt hơn.

 answer_label = Label(root, text='', font=("Arial", 22))
answer_label.pack(pady=20)

hint_label = Label(root, text='', font=("Arial", 22), bg='aqua')
hint_label.pack(pady=10)

Gọi hàm shuffler() để thiết lập trò chơi. Sau đó gọi vòng lặp chính() để chạy vòng lặp sự kiện Tkinter và lắng nghe các sự kiện (chẳng hạn như lần nhấn nút) cho đến khi bạn đóng cửa sổ.

 shuffler()
root.mainloop()

Đặt tất cả các mã lại với nhau và chơi Trò chơi Word Jumble mọi lúc, mọi nơi.

Đầu ra ví dụ của trò chơi Word Jumble

Khi chạy chương trình, nó sẽ hiển thị một từ được xáo trộn cùng với các nút Trả lời, Chọn một từ khác và Gợi ý. Khi nhấp vào Gợi ý , chương trình sẽ hiển thị từng chữ cái của câu trả lời đúng. Nếu nhập đúng đáp án, chương trình hiển thị thông báo trúng thưởng màu xanh.

Đầu ra của Word Jumble Game khi đúng

Nếu bạn đoán sai câu trả lời, chương trình sẽ yêu cầu bạn thử lại với màu đỏ.

Đầu ra của trò chơi Word Jumble khi sai

Trò chơi chữ bằng Python

Sử dụng Python, bạn có thể phát triển nhiều loại trò chơi chữ thú vị. Các ví dụ bao gồm Scrabble, Hangman, trò chơi ô chữ, Mad Libs và đảo chữ cái. Những trò chơi chữ này có thể dựa trên thiết bị đầu cuối hoặc dựa trên GUI, như bạn đã thấy ở đây.

Với Tkinter, bạn có thể tạo các trò chơi GUI rất dễ dàng. Tất cả những gì bạn phải làm là nhập mô-đun, tạo cửa sổ, thêm tiện ích con và chạy vòng lặp sự kiện. Đối với các trò chơi nâng cao hơn, bạn có thể khám phá các mô-đun Pygame, Kivy và Panda 3D.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *