django 编码错误

估计这个问题是2.7的问题3.0好像就统一utf编码了

报错代码:

python :ascii codec can't decode byte 0xe8 in posi

当django中报这个错误的时候,如果有比较详细的文件路径还好说就可以针对这个文件进行编码处理。但是如果报错中没有文件路径那肯定要疯掉。

 

 

针对没有具体的文件路径解决办法:

在这个地方增加代码,manage.py

#!/usr/bin/env python
import os
import sys

if __name__ == "__main__":
#重新加载sys reload(sys)
#设置编码为utf-8 sys.setdefaultencoding('utf-8')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cmdbs.settings") from django.core.management import execute_from_command_line execute_from_command_line(sys.argv)

 

这样直接在入口更改就OK了

 

那么为什么要重新加载,而直接引用过来则不能调用该函数呢?

      因为setdefaultencoding函数在被系统调用后被删除了,所以通过import引用进来时其实已经没有了,所以必须reload一次sys模块,这样setdefaultencoding才会为可用,才能在代码里修改解释器当前的字符编码。           

转载于:https://www.cnblogs.com/menkeyi/p/5899636.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值