不管什么语言,编码都是一件很麻烦的事,优雅的python也显得狼狈不堪,这里讲解下python编码问题,个人总结,仅供参考:
在python中,PRint语句应该是将一个字符串的二进制流输出到显示器或者指定的软件上,因而print这个语句是不对字符串进行任何编码的,所以有编码问题就没print语句的事儿了。
例如:print "我爱你" 将这个语句保存到python文件中,若文件用utf-8编码,则在文件头注释#coding=utf-8即可,这个注释的功能是让解释器以uft-8的编码解析文件,
若文件以ACSSI编码保存,则使用#coding=utf-8依旧会错误,除非把字符串转码,"我爱你".decode("ACSSI").encode("uft-8"),这样“我爱你”的二进制流就是utf-8编码而不是ACSSI编码,显示器(软件)能正常解析了。
decode是把一个字符串按你提供的参数解码成UNICODE编码,encode是将UNICODE编码成你指定的编码
参考资料:http://blog.chinaunix.net/uid-27838438-id-4227131.html
新闻热点
疑难解答