Python的编码格式更改问题


当前第2页 返回上一页

1

2

3

4

5

import sys

reload(sys)

sys.setdefaultencoding('utf8')

重启Python解释器,发现编码已被设置为utf8;

这是因为系统在Python启动的时候,自行调用该文件,设置系统的默认编码,而不需要每次都手动加上解决代码,属于一劳永逸的解决方法。

在平时开发时,我们都知道利用Decode和Encode进行转码操作。

1

2

Decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。

Encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。

在最新的python 3版本中,字符串的类型是str, 在内存中都是以Unicode表示,一个字符对应若干个字节;

如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。

以Unicode表示的str通过encode()方法可以编码为指定的bytes,例如:

1

2

3

4

5

6

7

8

>>> 'ABC'.encode('ascii')

b'ABC'

>>> '中文'.encode('utf-8')

b'\xe4\xb8\xad\xe6\x96\x87'

>>> '中文'.encode('ascii')

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)

在操作字符串时,我们经常遇到str和bytes的互相转换。为了避免乱码问题,应当始终坚持使用UTF-8编码对str和bytes进行转换。

友情链接【UTF-8编码转换工具】

【python3视频教程】

编码格式最初只有几种,由于计算机的普及,许多国家或组织的使用,编码格式也变得越来越多,但是国际通用的依然是UTF-8,所以应该有个良好的编程习惯,多使用UTF-8编码格式。在遇到编码问题时,也尽量保持编码格式的统一。

以上就是Python的编码格式更改问题的详细内容,更多文章请关注木庄网络博客!!

返回前面的内容

相关阅读 >>

Python如何导出微信公众号文章

Python中matplotlib库的用法介绍

Python之变量的学习介绍

Python中pip是什么

介绍Python应用学习之qrcode生成二维码

Python之requests模块使用详解

Python判断循环体结束的方法

Python如何批量读取图片

如何创建不存在的目录结构

实例详解Python使用回溯法子集树模板获取最长公共子序列问题

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...