Python中关于字符串的问题

在Python里面,字符串相加经常会出现'ascii' codec can't decode byte 0xe7 in position 0: ordinal not in range(128)这样的错误,原因呢,是因为相加的字符串中一个是Unicode类型,另外一个是str类型,不同类型相加是会出现报错,要注意的一点是,如果是在函数中定义的字符串肯定是str类型,如果是通过request或者数据库方式获取的字符串,Unicode类型,在对他们进行相加操作前要先进行类型转换,一般可以采用str(字符串)、字符串.encode('utf-8')格式

但是在从数据库中获取的数据时有一个字段类型是不需要转化的,blob可以直接进行字符串操作

 

posted @ 2015-08-12 15:23  不愿相离  阅读(289)  评论(0编辑  收藏  举报