Python中的字符编码
想用Django做些东西,大概算是一个用于管理的网站吧。当然是要做个主页,首先是想在工程目录下放一个index.htm的文件,但是好像django自带的那个 服务器不认这个东西,只好写个模块,并改urls.py,让它能访问,我不想把主页写死在模块里面,所以写到了一个网页文件中,index.htm,然后再用模块从文 件中读数据进来,结果出现了乱码,其实也就是浏览器默认用的是utf8的编码,但是我的文件用的是GB2312的编码,所以乱码就横空出世了。一开始以为是那个ind ex.htm文件的问题,于是把它的编码也切成utf8,但是再次显示的时候还是乱码。上网查了一下,好像是python自动判断系统的编码,然后进行转换。后来加上 了这几句话就好了。不过不清楚为什么要加上那句reload,不知道是不是怕程序执行过程中系统环境发生变化。 import sys reload(sys) sys.setdefaultencoding(‘utf8’)