python3中json编码怎么用

发布时间:2020-11-16 09:16:29 作者:小新
来源:亿速云 阅读:181

这篇文章给大家分享的是有关python3中json编码怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

下面以一个例子展开:

In [121]: json.dumps('中文', ensure_ascii=True)
Out[121]: '"\\u4e2d\\u6587"'
 
In [122]: json.dumps('中文', ensure_ascii=False)
Out[122]: '"中文"'
复制代码

可以看到, ensure_ascii True 的情况下, 中文 被编码成了 Unicode , False 才能正常显示, 但是这跟 ASCII 有什么关系呢? 来看一下 官方文档 对这个参数的解释:

如果 ensure_ascii true (即默认值),输出保证将所有输入的非 ASCII 字符转义。如果 ensure_ascii false,这些字符会原样输出。

复制代码

 

现在稍微明白了, 在 ensure_ascii 为 True 的情况下, 如果字符串中存在 非ASCII 字符就将其转义, 根据结果可以知道这个字符被转义为 Unicode 码并格式化成了一个字符串, 注意 "\\u4e2d\\u6587" 与 "\u4e2d\\u6587" 是不同的, 前者是长度为 12 的字符串, 后者会被 Python 直接解析为 中文 , 长度为 2 . 这也就是我一开始出现的问题, 直接将转义的字符串在网络上传输可能会无法被识别. 比如 中文 被转义成 \\u4e2d\\u6587 , 而服务器如果不知道它是被转义过的字符串, 那它就是一个长度为 12 的普通字符串, 肯定会识别出错. 而将 ensure_ascii 设为 False 就不会进行转义, 使用原始字符

感谢各位的阅读!关于python3中json编码怎么用就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!

推荐阅读:
  1. python3中使用哪个编码
  2. Python3 JSON编码解码方法详解

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python python3 json编码

上一篇:Python3中默认编码如何使用

下一篇:python3中编码怎样获取网页

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》