python编码问题、有没有一劳永逸的_python编码问题总结(持续更新)

相信很多pythoner都对python 3.0之前版本的编码问题恨之入骨,我也对这个问题恨到基因里面。有时候也真的想放弃这个3.0之前的版本,直接奔3.0,不仅是因为3.0之前的版本编码问题,还有它不支持多核计算。但3.0也有很多缺憾,就是库类跟不上。没办法,只能硬着头皮跟它干。

使用python一年多后,也总结了一些解决编码的方法。

1、乱码的编码

因为乱码基本上都不能用任何一种编码方式(“utf-8,gb18030”)去编码或解码,或者能utf-8编码,但不能gb18030编码;或者反过来。可程序要运行流畅怎么办?我想出了一套办法。

查了一下ASCII码表,发现ASCII十进制值在126以下的字符是英文,数字,以及标点符号;而在127~255范围内的那些字符,是ASCII的扩展字符,经过chr(i),126 < i < 256 后,显示出来的都是乱码,根本看不懂,试着用

chr(i).encode('utf-8'),chr(i).encode('gb18030'),chr(i).decode('utf-8'),chr(i).decode('gb18030')都无法通过编译。根据程序需要,因为乱码显示出来的信息基本上无用,程序也用不了这些编码,所以干脆把它过滤掉,省得去编码。如果程序需要解决这些乱码怎么办?基本上不可能,根本无法显示。那些可以显示的乱码的ASCII十进制值其实范围不在127~255之间,都可以通过编译。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值