#coding:gbk
a=u'中华人民共和國' #字符串前面一定要加上字母u,不然会显示成乱码。
#最后一个字是繁体,其它都是简体。
import Tkinter
w=Tkinter.Tk()
b=Tkinter.Button(text=a,command=w.destroy)
b.pack()
w.mainloop()
运行结果如下:

下面是我从python documentation 中找到的资料
Codec | Aliases | Languages
代码 别名 语言
gb2312 chinese, csiso58gb231280, euc-cn, Simplified Chinese(简体中文)
euccn, eucgb2312-cn, gb2312-1980,
gb2312-80, iso-ir-58
gbk 936, cp936, ms936 Unified Chinese(统一的中文)
如果把上面的 #coding:gbk 改成 #coding:gb2312 程序运行就会出错,因为字符串a的最后一个字符是繁体字,其它都是简体中文。我们还可以使用Aliases里面的别名,比如 #coding:936 或 #coding:chinese(只能使用简体中文)。
以上只是我经过试验得出的结论,如果有错误欢迎指正。
没有评论:
发表评论