在Tkinter中创建简单小部件时未知语法错误
我在跟着这个教程(http://sebsauvage.net/python/gui/#add_button)学习用Tkinter制作小部件。我一直很仔细地按照步骤来,但在第10步运行时,出现了“无效语法”的错误。这里是代码:
import tkinter
class simpleapp_tk(tkinter.Tk):
def __init__(self,parent):
tkinter.Tk.__init__(self,parent)
self.parent = parent
self.initialize()
def initialize(self):
self.grid()
self.entry = tkinter.Entry(self)
self.entry.grid(column=0,row=0,sticky='EW')
button = tkinter.Button(self,text=u"Click me !")
button.grid(column=1,row=0)
if __name__ == "__main__":
app = simpleapp_tk(None)
app.title('my application')
app.mainloop()
IDLE(Python的一个开发环境)指出错误出现在这一行,具体是第二个引号:
button = tkinter.Button(self,text=u"Click me !**"**)
这个教程是用Python 2写的,但我用的是Python 3。有没有人能看出错误是什么,以及该如何在Python 3中修复它?
非常感谢任何帮助,我是编程新手,英语也不是我的母语。
2 个回答
2
在Python 3中,字符串前面没有这个前缀来表示Unicode字符串。
4
把 u"Click me !**"
替换成 "Click me !**"
这里的 u
是用来表示一个Unicode字符串的标记(在Python 2中,它的类型是 unicode
,而不是 str
)。不过在Python 3中,str
和 unicode
这两种类型的区别就没有了,所以 u
这个标记也就不需要了。