2004年02月17日 星期二 13:35
python-chinese,您好! 一直对python的string的codec有些不解,折腾了一阵,感觉有些明白了,但仍有些疙瘩。 看帮助,修改site.py可以修改string的默认的encoding,但我把它修改系统值cp936或mbcs,动用sys.getdefaultencoding确实变了, 但如果脚本中有gb字符的话print显示可以但会出一个警告信息,表明文件中有非ascii字符(不是改过来吗),但如果在文件开头加上 #-*- coding:mbcs -*- 的话就不出现警告了。似乎修改默认的encoding没有意义 致 礼! zhao bear_sh at eastday.com 2004-02-17
2004年02月17日 星期二 13:54
>但如果脚本中有gb字符的话print显示可以但会出一个警告信息 你把默认encoding变成非gb的,而文件中有gb字符,当然应该有警告啊。 -----Original Message----- From: zhao [mailto:bear_sh at eastday.com] Sent: 2004年2月17日 13:36 To: python-chinese Subject: [python-chinese] 关于string的encoding python-chinese,您好! 一直对python的string的codec有些不解,折腾了一阵,感觉有些明白了,但仍有些疙瘩。 看帮助,修改site.py可以修改string的默认的encoding,但我把它修改系统值cp936或mbcs,动用sys.getdefaultencoding确实变了, 但如果脚本中有gb字符的话print显示可以但会出一个警告信息,表明文件中有非ascii字符(不是改过来吗),但如果在文件开头加上 #-*- coding:mbcs -*- 的话就不出现警告了。似乎修改默认的encoding没有意义 致 礼! zhao bear_sh at eastday.com 2004-02-17
2004年02月17日 星期二 14:32
不好意思,我上封信说错了。 site.py里面的encoding是给python c api 里面的_PyUnicode_Init()用的,就是说例如你用unicode函数创建一个unicode字符串,如果没有指定用哪个encoding,Python会使用encoding里面的那个。 而python读取,解析一个脚本文件时,是不用这个的。如果你前面没有encoding的声明,它就一律当ascii处理。具体情况请看PEP 0263 : http://www.python.org/peps/pep-0263.html -----Original Message----- From: zhao [mailto:bear_sh at eastday.com] Sent: 2004年2月17日 13:36 To: python-chinese Subject: [python-chinese] 关于string的encoding python-chinese,您好! 一直对python的string的codec有些不解,折腾了一阵,感觉有些明白了,但仍有些疙瘩。 看帮助,修改site.py可以修改string的默认的encoding,但我把它修改系统值cp936或mbcs,动用sys.getdefaultencoding确实变了, 但如果脚本中有gb字符的话print显示可以但会出一个警告信息,表明文件中有非ascii字符(不是改过来吗),但如果在文件开头加上 #-*- coding:mbcs -*- 的话就不出现警告了。似乎修改默认的encoding没有意义 致 礼! zhao bear_sh at eastday.com 2004-02-17
2004年02月17日 星期二 21:02
> 看帮助,修改site.py可以修改string的默认的encoding,但我把它修改 系 > 统值cp936或mbcs,动用sys.getdefaultencoding确实变了, > 但如果脚本中有gb字符的话print显示可以但会出一个警告信息,表明文件中有 非 > ascii字符(不是改过来吗),但如果在文件开头加上 I have read that it is better to modify sitecustomize.py than site.py. This is because site.py can be overwritten by a python upgrade. sitecustomize.py is called by site.py. If it does not exist, you can create it and put it anywhere in the python path. John
Zeuux © 2024
京ICP备05028076号