首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python中将字符串编码为gbk

在Python中将字符串编码为gbk
EN

Stack Overflow用户
提问于 2011-01-22 00:50:59
回答 2查看 4.8K关注 0票数 2

我正在尝试看看不同的字符串在不同的编码中会是什么样子……

例如:

代码语言:javascript
复制
>>> str1 = "asdf"
>>> str1.encode('utf-16')
'\xff\xfea\x00s\x00d\x00f\x00'
>>> str1.encode('base64')
'YXNkZg==\n'

这些都能得到我想要的。

但是我想看看在gbk、gb2312或gb18030中某些字符串是什么样子的。

代码语言:javascript
复制
>>> str1.encode('gbk')
'asdf'
>>> str1.encode('gb2312')
'asdf'
>>> str1.encode('gb18030')
'asdf'

输出不应该是'asdf‘以外的东西吗?

我有Python2.7,我可以在lib/encodings中看到gbk.py和其他文件

我想知道我在输出中没有看到任何变化,是因为这些字母在编码中显示相同,还是因为我需要以某种方式启用这些编码的使用(需要某种导入?)……

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-22 00:55:05

只要只使用字节值0-127,这些编码就等同于ASCII。UTF-8也是如此。要真正看到不同之处,请尝试一些真正的中文。

票数 2
EN

Stack Overflow用户

发布于 2011-01-22 00:56:31

Wikipedia page:

字符编码为1或2个字节。00-7F范围内的字节是单个字节,其含义与ASCII中的相同。严格来说,这个范围内有96个字符和32个控制代码。

所以不,你的ASCII字符的测试字符串不应该编码成不同的东西(至少对于GBK不是这样的,我没有检查变体)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4761442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档