Я сделал этот код, чтобы начать создавать игру TicTacToe, я уверен, что есть способ создать одну функцию, которая изменяет содержимое последней нажатой кнопки или что-то подобное.
Как можноя делаю его в более короткую версию?
Я думаю, что могу использовать .self и сделать одну функцию, но я не знаю как.
import tkinter as tk
main = tk.Tk()
l1b1 = tk.StringVar()
l1b1.set("0")
l1b2 = tk.StringVar()
l1b2.set("0")
l1b3 = tk.StringVar()
l1b3.set("0")
l2b1 = tk.StringVar()
l2b1.set("0")
l2b2 = tk.StringVar()
l2b2.set("0")
l2b3 = tk.StringVar()
l2b3.set("0")
l3b1 = tk.StringVar()
l3b1.set("0")
l3b2 = tk.StringVar()
l3b2.set("0")
l3b3 = tk.StringVar()
l3b3.set("0")
def l1b1co():
l1b1.set("x")
def l1b2co():
l1b2.set("x")
def l1b3co():
l1b3.set("x")
def l2b1co():
l2b1.set("x")
def l2b2co():
l2b2.set("x")
def l2b3co():
l2b3.set("x")
def l3b1co():
l3b1.set("x")
def l3b2co():
l3b2.set("x")
def l3b3co():
l3b3.set("x")
tk.Button(main, textvariable=l1b1, command=l1b1co).grid(column=0, row=0)
tk.Button(main, textvariable=l1b2, command=l1b2co).grid(column=1, row=0)
tk.Button(main, textvariable=l1b3, command=l1b3co).grid(column=2, row=0)
tk.Button(main, textvariable=l2b1, command=l2b1co).grid(column=0, row=1)
tk.Button(main, textvariable=l2b2, command=l2b2co).grid(column=1, row=1)
tk.Button(main, textvariable=l2b3, command=l2b3co).grid(column=2, row=1)
tk.Button(main, textvariable=l3b1, command=l3b1co).grid(column=0, row=2)
tk.Button(main, textvariable=l3b2, command=l3b2co).grid(column=1, row=2)
tk.Button(main, textvariable=l3b3, command=l3b3co).grid(column=2, row=2)
main.mainloop()