Синтаксическая ошибка с оператором IF в Python 3.0 - PullRequest
1 голос
/ 04 октября 2010

Я учу себя немного Python, и я столкнулся с проблемой, которая, вероятно, явно очевидна, за исключением того, что я не вижу его, и мне нужна другая пара глаз.

Я делаю маленькую игру, которую я превратил в графическую программу. У меня есть этот раздел кода, который при запуске дает мне «Traceback (последний вызов последним): Файл "", строка 21, в Синтаксическая ошибка: если playguess == "A" ::, строка 2124 " Строка 21, если playguess == "A":

Может быть, пара не связанных вещей неправильна, но это заявление IF, которое сбивает меня с толку прямо сейчас. Я импортировал модуль Tkinter, я просто скопировал ту часть, которая мне показалась релевантной.

def compare():
    R = Label(main, text = 'Yes you are right !')
    W = Label(main, text = "No, It's "+str(states[state])
    #if playerguess == str(states[state]):
    if playguess == "A":
       R.pack()
    else:
       W.pack()

#print ("Guess State Capitols")
state = choosestate()
main = Tk()
main.title("Guess State Capitols")
main.geometry('450x100+200+100')

Q = Label(main,text = 'What is the capitol of ' +state)
Q.pack()
playerguess = Entry(main)
playerguess.pack()
playguess = playerguess.get()



main.mainloop()

1 Ответ

3 голосов
/ 04 октября 2010

Строка:

W = Label(main, text = "No, It's "+str(states[state])

Не содержит закрывающих скобок для класса / функции Label ().

Поэтому оператор if интерпретируется как находящийся внутри скобок, чтоне работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...