打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
一篇文章助你理解Python3中字符串编码问题

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。

前几天给大家介绍了unicode编码和utf-8编码的理论知识,以及Python2中字符串编码问题,没来得及上车的小伙伴们可以戳这篇文章:浅谈unicode编码和utf-8编码的关系一篇文章助你理解Python2中字符串编码问题。下面在Python3环境中进行代码演示,分别WindowsLinux操作系统下进行演示,以加深对字符串编码的理解。

Python2Python文件的文件头往往会声明字符的编码格式,通过会使用代码“#-*- coding -*-”作为编码声明,如下图所示。

因为考虑到Python文件中可能会穿插中文,不然的话Python通过解释器来读取文件的时候,文件中的中文就有可能识别不了。而在Python3中,我们就不必像Python2的文件那样进行声明编码格式了,因为在Python3中,默认将所有的字符都视为unicode格式了。下面在Python3环境下进行代码演示。

1、首先在Windows操作系统下的Python3环境中进行演示,如下图所示。

可以看到str1就是一个中文的字符串,字符串前面也没有加u以表示其为unicode编码,其实也没有必要加那个字符,因为在Python3中将所有的字符都内置成unicode字符了,这就是Python2Python3最大的区别。所有在这里可以直接调用encode()函数对字符串进行编码,而且也不会报错。

2、接下来在Linux操作系统下的Python3环境中进行演示,如下图所示。

这个过程和Windows下是一样的,这里就不再赘述了。有个地方需要注意的是在Linux操作系统下,Python3的默认环境编码变为了utf-8编码,而不是Python2中的ASCII编码。

总的来说,Python3解决了一个字符串编码的重要问题,所以在字符串编码的报错方面相对Python2来说要少的多,帮助我们省下了很多事情。小伙伴们,关于在Python2Python3中字符串的编码问题这个知识点十分重要,希望大家都可以get到噢~~

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Python入门教程之字符串编码知识小结
[Python]Python中文全攻略
Python:彻底搞懂Python的字符编码
SyntaxError: Non-ASCII character Python、Unicode和中文
python中的编码问题:以ascii和unicode为主线
浅谈 Python 2 中的编码问题
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服