返回顶部
首页 > 资讯 > 后端开发 > Python >python编码encode和decod
  • 813
分享到

python编码encode和decod

pythonencodedecod 2023-01-31 02:01:31 813人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

计算机里面,编码方法有很多种,英文的一般用ascii,而中文有unicode,utf-8,gbk,utf-16等等。 unicode是 utf-8,gbk,utf-16这些的父编码,这些子编码都能转换成unicode编码,然后转化成子编码,

计算机里面,编码方法有很多种,英文的一般用ascii,而中文有unicode,utf-8,gbk,utf-16等等。

unicode是 utf-8,gbk,utf-16这些的父编码,这些子编码都能转换成unicode编码,然后转化成子编码,例如utf8可以转成unicode,再转gbk,但不能直接从utf8转gbk

所以,python中就有两个方法用来解码(decode)与编码(encode),解码是子编码转unicode,编码就是unicode转子编码

1.编码

#encoding=utf-8
c=u'\u5f00\u59cb\u6267\u884c\u66f4\u65b0\u547d\u4ee4'
print c
print c.encode('utf8')
print c.encode('gbk')

在这里,文件的编码方式为utf8,控制台的编码方式是utf8
变量c是一个unicode编码的字符串(需要在引号前面加u)

输出的结果为:

开始执行更新命令
开始执行更新命令
��ʼִ�и�������

因为控制台是utf8编码,所以unicode编码和utf8编码都能识别,但是gbk就不可以了
2.解码

#encoding=utf-8
a = '中文'
print a.decode('g')
print [a.decode('g')]

这里a为utf8编码,decode方法将utf8解码为unicode编码
输出结果:

中文
[u'\u4e2d\u6587']

由于控制台能识别unicode编码,所以需要把字符串放在列表里面才能看到unicode源码

#encoding=utf-8
a = '中文'
print [a.decode('gbk')]

因为a是utf8编码的,如果将a用gbk解码,程序就会报错

UnicodeDecodeError: 'gbk' codec can't decode bytes in position 2-3: illegal multibyte sequence

a = '中文'
print a.decode('utf-16')

如果用utf-16解码方法解码utf-8的字符串,程序并不会报错(可能因为它们的编码方式相似),但是返回的是乱码:

如果一个字符串为unicode码,又没有u标识,可以这样来转换成中文

a='\u8054\u76df\u533a'
b="u'%s'"%a

print eval(b)

后记

1.如果想知道一个字符串是什么编码,可以print [字符串] 来看二进制码

[u'\u76ee\u6807\u533a\u670d']
['\xe7\x9b\xae\xe6\xa0\x87\xe5\x8c\xba\xe6\x9c\x8d']

第一个是unicode,第二个是utf-8

--结束END--

本文标题: python编码encode和decod

本文链接: https://lsjlt.com/news/185788.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python编码encode和decod
    计算机里面,编码方法有很多种,英文的一般用ascii,而中文有unicode,utf-8,gbk,utf-16等等。 unicode是 utf-8,gbk,utf-16这些的父编码,这些子编码都能转换成unicode编码,然后转化成子编码,...
    99+
    2023-01-31
    python encode decod
  • Python URL编解码 encode
    urllib包中parse模块的quote和unquote from urllib import parse #这个是js的结果 # encodeURIComponent('中国') # "%E4%B8%AD%E5%9B%BD...
    99+
    2023-01-31
    编解码 Python URL
  • Python encode和decode
    今天在写一个StringIO.write(int)示例时思维那么一发散就拐到了字符集的问题上,顺手搜索一发,除了极少数以外,绝大多数中文博客都解释的惨不忍睹,再鉴于被此问题在oracle的字符集体系中蹂躏过,因此在过往笔记的基础上增删了几...
    99+
    2023-01-30
    Python encode decode
  • python的encode和decode
    python的encode和decode误读总结    最近在学Python,对编码有个误解的地方    下面是错误的理解:    encode():编码,将对象的编码转换为指定编码格式,按照字面理解,一直以为是其他编码格式转换成unico...
    99+
    2023-01-31
    python encode decode
  • PYTHON的decode和encode
    1、decode字面含义# 解码:将字节码按照编码规则解析成我们想要的内容# 举例:帅’的utf-8编码是 ‘E5 B8 85’[in]b'\xe5\xb8\x85'.decode('utf8')[out]'帅'# 注:\x表示16进制,\...
    99+
    2023-06-02
  • Python字符串编码转换encode()和decode()方法怎么使用
    这篇文章主要讲解了“Python字符串编码转换encode()和decode()方法怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python字符串编码转换encode()和deco...
    99+
    2023-06-25
  • Python字符串编码转换encode()和decode()方法详细说明
    目录1.Python encode()方法 2.Python decode()方法 前言: 我们知道,最早的字符串编码是 ASCII 编码,它仅仅对 10 个数字、26 个大小写英文...
    99+
    2024-04-02
  • python中encode和decode函数说明
     python中encode和decode函数说明 1.  简介字符串编码常用类型:utf-8,gb2312,cp936,gbk等。python中,我们使用decode()和encode()来进行解码和编码,使...
    99+
    2023-06-02
  • Python encode()方法和decode()方法详解
    目录Python encode()方法Python decode()方法Python encode()方法 encode() 方法为字符串类型(str)提供的方法,用于将 str 类...
    99+
    2022-12-28
    Python encode()方法 Python decode()方法
  • 编码和Python的bytearray
    unicode    是  编码规范          ===》 http协议GBK UTF-8  是 字符集  编码方法   ===》 Apache  nginxPython 3.Xbytes 和 str 的区别在于bytes是byte的...
    99+
    2023-01-31
    Python bytearray
  • python密码学Base64编码和解码教程
    目录Base64编码编码程序输出解码程序输出差异在ASCII和base64之间缺点Base64编码 Base64编码将二进制数据转换为文本格式,通过通信通道传递,用户可以安全地处理文...
    99+
    2024-04-02
  • python中的编码和解码及\x和\u问题
    目录编码和解码及\x和\u问题python解析 \x 和 \u "乱码"python2.7解析方法python3解析方法编码和解码及\x和\u问题 “...
    99+
    2024-04-02
  • python密码学Base64编码和解码的方法
    本文小编为大家详细介绍“python密码学Base64编码和解码的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“python密码学Base64编码和解码的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。B...
    99+
    2023-06-30
  • python编码和解码的方法是什么
    Python提供了多种编码和解码的方法。以下是一些常用的方法:1. encode():用于将字符串编码为指定的编码格式。例如,可以使...
    99+
    2023-09-16
    python
  • Python 3.x中的编码和解码问题
    最近在极客学院学习爬虫,老师用的是2.x版本,而我电脑里的版本是3.x,于是在网页上查找在输出中文时如何正确输出。 我原以为2.x 3.x在很多语法上没什么区别,在解码decode上应该也差不多,没想到竟然发现,很多博客提到2....
    99+
    2023-01-31
    Python
  • Python编码规范摆脱Python编码噩梦
    目录1. Python 3 中 str 与 bytes2. Python 2 中 str 与 unicode3. 如何检测对象的编码4. 编码与解码的区别5. 如何设置文件编码博客原...
    99+
    2024-04-02
  • linux之系统编码,python编码,
    如果你对python2和python3的中编解码很清楚,这里我认为你很清楚。具体参考文档:“python2 encode和decode函数说明.docx”“字符编码——从ASCII开始.docx”以上所有文档均为本地文档。sys.getde...
    99+
    2023-01-31
    系统 linux python
  • Python HTML编码解码
    >>> import HTMLParser >>> h = HTMLParser.HTMLParser() &g...
    99+
    2023-01-31
    Python HTML
  • Python Unicode编码
    使用技巧事实上,只要遵守以下规则,可以规避90%由于Unicode字符串处理引起的bug,剩下的10%通过python的库和模块能够解决。程序中出现字符串时一定要加个前缀u。不要用str()函数,用unicode()代替。不要用过时的str...
    99+
    2023-01-31
    Python Unicode
  • Python 2与Python 3版本和编码的对比
    一、版本对比 首先要说的是,Python的版本,目前主要分为两大类: Python 2.x的版本的,被称为Python2:是目前用的最广泛的,比如Python 2.7.3。 Python 3.x的版本的,被...
    99+
    2022-06-04
    版本 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作