from tkinter import *
def callbackX(button, win, buttonNR):
print("Pressed button", buttonNR)
player1.append(buttonNR)
win.destroy()
gameScreen()
def gameScreen():
win = Tk()
#f = Frame(win)
if '1' in player1 == 'True':
b1 = Button(win, text="X", command=lambda: callbackX(b1, win, '1'))
b1.grid(row=0, column=0)
if '2' in player1 == 'True':
b2 = Button(win, text="X", command=lambda: callbackX(b2, win, '2'))
b2.grid(row=0, column=1)
if '3' in player1 == 'True':
b3 = Button(win, text="X", command=lambda: callbackX(b3, win, '3'))
b3.grid(row=0, column=2)
if '4' in player1 == 'True':
b4 = Button(win, text="X", command=lambda: callbackX(b4, win, '4'))
b4.grid(row=1, column=0)
if '5' in player1 == 'True':
b5 = Button(win, text="X", command=lambda: callbackX(b5, win, '5'))
b5.grid(row=1, column=1)
if '6' in player1 == 'True':
b6 = Button(win, text="X", command=lambda: callbackX(b6, win, '6'))
b6.grid(row=1, column=2)
if '7' in player1 == 'True':
b7 = Button(win, text="X", command=lambda: callbackX(b7, win, '7'))
b7.grid(row=2, column=0)
if '8' in player1 == 'True':
b8 = Button(win, text="X", command=lambda: callbackX(b8, win, '8'))
b8.grid(row=2, column=1)
if '9' in player1 == 'True':
b9 = Button(win, text="X", command=lambda: callbackX(b9, win, '9'))
b9.grid(row=2, column=2)
player1 = []; player2 = []
gameScreen()
程序似乎无法识别满足if语句条件。这是什么怪癖吗?如何解决这个问题?在
代码应该会为player1打开一个tic-tac-toe游戏屏幕,它会关闭并重新打开窗口,而不需要先前按下的按钮。在
'True'是一个字符串,只需删除引号,因为True是bool。在
实际上,只要简单地使用
如果player1中的“1”:
对你来说没问题。在
相关问题 更多 >
编程相关推荐