جدول المحتويات:
فيديو: لعبة بيثون تيك تاك تو: 4 خطوات
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
لعبة بيثون تيك تاك تو
هذه اللعبة مصنوعة من لغة بيثون وهي لغة كمبيوتر
لقد استخدمت محرر python يسمى: pycharm ، يمكنك أيضًا استخدام محرر كود Python العادي أيضًا
الخطوة 1: الاستيراد
من استيراد tkinter *
الخطوة 2: الجذر
الجذر = Tk ()
root.title ("3T TIC TAC TOE") # Title
text = Entry (root، font = ("ds-digital"، 15)) text.pack (fill = X، padx = 5، pady = 5، ipadx = 5، ipady = 5) # Text
اللوحة = ["-" ، "-" ، "-", "-", "-", "-"
، "-"، "-"، "-"] # مجلس
الخطوة 3: الوظيفة بعد وضعها في المحرر تظهر التحذيرات ، انقر فوق Warrnigs وإعطاء Assambel All
# المهام
player = "X" button = stop_game = خطأ stop_game_tie = خطأ
def Turn (): # printing Turn text.delete (0، END) text.insert (0، "{} 'S TURN".format (player))
def خروج (): root.destroy () exit ()
def Game_Over (): # Chech إذا انتهت اللعبة Check_Winner ()
إذا كان stop_game == صحيحًا: Hplayer () text.delete (0، END) text.insert (0، "'{}' WINNER".format (player))
آخر: Check_Tie ()
إذا كانت stop_game_tie == صواب: text.delete (0 ، END) text.insert (0، "TIE MATCH")
def Check_Winner (): # تحقق مما إذا كان هناك لعبة stop_game عالمية فائزة
row_1 = لوحة [0] == لوحة [1] == لوحة [2]! = "-" row_2 = لوحة [3] == لوحة [4] == لوحة [5]! = "-" row_3 = لوحة [6] == لوحة [7] == لوحة [8]! = "-" إذا كانت row_1 أو row_2 أو row_3: stop_game = True
العمود_1 = اللوحة [0] == اللوحة [3] == اللوحة [6]! = "-" column_2 = اللوحة [1] == اللوحة [4] == اللوحة [7]! = "-" column_3 = اللوحة [2] == لوحة [5] == لوحة [8]! = "-" إذا عمود_1 أو عمود_2 أو عمود_3: stop_game = صحيح
diagonal_1 = اللوحة [0] == اللوحة [4] == اللوحة [8]! = "-" diagonal_2 = اللوحة [2] == اللوحة [4] == اللوحة [6]! = "-" إذا كانت diagonal_1 أو diagonal_2: stop_game = صحيح
def Check_Tie (): # تحقق مما إذا كان التعادل مباراة مباراة global stop_game_tie
إذا لم تكن "-" في اللوحة: stop_game_tie = صحيح
def Hplayer (): # Managing Turn global player
إذا كان اللاعب == "X": player = "O"
آخر: player = "X"
def Add_Text (نقطة البيع ، تشغيل): # إضافة نص زر عالمي
إذا لم تكن نقاط البيع في الزر و stop_game == False and stop_game_tie == False and pos! = 9: Turn ()
def_buttons [نقاط البيع] تكوين (نص = تشغيل) لوحة [نقاط البيع] = لاعب
button.append (نقطة البيع) Hplayer () تشغيل () Game_Over ()
الخطوة 4: الكود النهائي سوف يعطي نظرة نهائية؟
# جريد
def New_Match (): # زر المطابقة الجديدة الوظيفة اللوحة العالمية للزر العالمي للاعب العالمي stop_game global stop_game_tie
button_1.configure (text = "") button_2.configure (text = "") button_3.configure (text = "") button_4.configure (text = "") button_5.configure (text = "") button_6.configure (نص) = "") button_7.configure (text = "") button_8.configure (text = "") button_9.configure (text = "") board = ["-"، "-"، "-"، "-"، "-"، "-"، "-"، "-"، "-"] player = "X" button = stop_game = False stop_game_tie = False Turn ()
# أزرار
منعطف أو دور()
الإطار = الإطار (الجذر) frame.pack (الجانب = TOP ، المرساة = NW)
frame1 = إطار (إطار) frame1.pack ()
button_1 = زر (الإطار 1 ، النص = "" ، العرض = 8 ، الارتفاع = 3 ، الأمر = لامدا: Add_Text (0 ، مشغل) ، bg = 'وردي') button_1.pack (الجانب = اليسار)
button_2 = زر (إطار 1 ، نص = "" ، عرض = 8 ، ارتفاع = 3 ، الأمر = لامدا: Add_Text (1 ، لاعب) ، bg = "وردي") button_2.pack (الجانب = اليسار)
button_3 = زر (الإطار 1 ، النص = "" ، العرض = 8 ، الارتفاع = 3 ، الأمر = لامدا: Add_Text (2 ، لاعب) ، bg = 'وردي') button_3.pack (الجانب = اليسار)
frame2 = إطار (إطار) frame2.pack ()
button_4 = زر (الإطار 2 ، النص = "" ، العرض = 8 ، الارتفاع = 3 ، الأمر = لامدا: Add_Text (3 ، مشغل) ، bg = "أزرق") button_4.pack (الجانب = اليسار)
button_5 = زر (الإطار 2 ، النص = "" ، العرض = 8 ، الارتفاع = 3 ، الأمر = لامدا: Add_Text (4 ، مشغل) ، bg = "أزرق") button_5.pack (الجانب = اليسار)
button_6 = زر (الإطار 2 ، النص = "" ، العرض = 8 ، الارتفاع = 3 ، الأمر = لامدا: Add_Text (5 ، لاعب) ، bg = 'أزرق') button_6.pack (الجانب = اليسار)
frame3 = إطار (إطار) frame3.pack ()
button_7 = زر (الإطار 3 ، النص = "" ، العرض = 8 ، الارتفاع = 3 ، الأمر = لامدا: Add_Text (6 ، مشغل) ، bg = "برتقالي") button_7.pack (الجانب = اليسار)
button_8 = زر (الإطار 3 ، النص = "" ، العرض = 8 ، الارتفاع = 3 ، الأمر = لامدا: Add_Text (7 ، مشغل) ، bg = "برتقالي") button_8.pack (الجانب = اليسار)
button_9 = زر (إطار 3 ، نص = "" ، عرض = 8 ، ارتفاع = 3 ، الأمر = لامدا: Add_Text (8 ، مشغل) ، bg = "برتقالي") button_9.pack (الجانب = اليسار)
frame4 = إطار (إطار) frame4.pack ()
button_clear = زر (frame4، text = "NEW MATCH"، width = 13، height = 3، command = lambda: New_Match ()، bg = 'violet'، foreground = 'red') button_clear.pack (الجانب = اليسار)
exit_button = زر (frame4، text = "EXIT"، width = 12، height = 3، command = lambda: Exit ()، bg = 'green'، foreground = 'orange') exit_button.pack (side = LEFT)
def_buttons = [button_1 ، button_2 ، button_3 ، button_4 ، button_5 ، button_6 ، button_7 ، button_8 ، button_9]
root.mainloop ()