جدول المحتويات:

لعبة بيثون تيك تاك تو: 4 خطوات
لعبة بيثون تيك تاك تو: 4 خطوات

فيديو: لعبة بيثون تيك تاك تو: 4 خطوات

فيديو: لعبة بيثون تيك تاك تو: 4 خطوات
فيديو: Python / Tkinter - Tic Tac Toe Game in 4 minutes! 2024, سبتمبر
Anonim
لعبة بيثون تيك تاك تو
لعبة بيثون تيك تاك تو

لعبة بيثون تيك تاك تو

هذه اللعبة مصنوعة من لغة بيثون وهي لغة كمبيوتر

لقد استخدمت محرر 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 ()

موصى به: