idle3.0为什么蹦了?

idle3.0为什么蹦了?

python3000的idle编辑窗口中

def test():
    f=open("python.txt","wb")
    f.write("中国".encode('utf-8'))
    f.close()
   
test()

一运行就退出了,alt+x都不行

shell中输入代码就没事, 把'中国'换成其他非中文字符也没事,why?

f.write(u"中国")

或者py脚本指定编码utf-8,文件也另存为utf-8,不需要encode试试看


QUOTE:
原帖由 xiaoyu9805119 于 2008-12-17 08:57 发表
f.write(u"中国")

或者py脚本指定编码utf-8,文件也另存为utf-8,不需要encode试试看

f.write(u"中国"):py3.0,对二进制文件,是不能写入字符串的,必须是byte,字符默认就是unicode的

文件都是utf-8的