上班之余抽点时间出来写写博文,希望对新接触的朋友有帮助。今天在这里和大家一起学习一下编码数据类型
一、错误类型如下:
DjangoUnicodeDecodeError at /admin/books/book/
'ascii' codec can't decode byte 0xe8 in position 0: ordinal not in range(128). You passed in <Book: [Bad Unicode data]> (<class 'books.models.Book'>)
坚持的昨天叫立足,坚持的今天叫进取,坚持的明天叫成功。
解决方案:
混杂了 python2 里边的 str 和 unicode 数据类型。
0、你须要的是让编码用际实编码而不是 ascii
1、对须要 str->unicode 的代码,可以在前边写上
import sys
reload(sys)
sys.setdefaultencoding('utf8')
把 str 编码由 ascii 改成 utf8 (或 gb18030)
2、python3 区分了 unicode str 和 byte arrary,并且认默编码不再是 ascii
考参:http://vososo.com/vo/558
文章结束给大家分享下程序员的一些笑话语录: AdobeFlash拖垮Windows拖垮IE!又拖垮Linux拖垮Ubuntu拖垮FirxEox!还拖垮BSD拖垮MacOS拖垮Safri!简直无所不拖!AdobeFlash滚出网路世界!不要以为市占有率高就可以持续出烂货产品!以后替代品多得是!