2010-10-04 96 views
1

我自学了一些Python,并且遇到了一个可能很明显的问题,除非我看不到它,而我需要另一双眼睛。在Python 3.0中使用IF语句的语法错误

我正在制作一个小游戏,我制作了一个gui程序。 我有这段代码,它在运行时给我 “Traceback(最近呼叫的最后一个): File”“,第21行,在 语法错误:if playguess ==”A“::,line 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() 
+0

我们看不到:) – codaddict 2010-10-04 03:49:49

+1

请发布代码然后 – Zimm3r 2010-10-04 03:49:51

+0

您能详细说明您遇到的问题吗?代码片段,有问题的错误? – kafuchau 2010-10-04 03:50:13

回答

3

线:

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

不具有用于标签()类/功能的闭括号。

因此,if语句被解释为在括号内,这不起作用。

+0

这是一堆。就是这样。 – chrisfs 2010-10-04 04:11:13