iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python encode()方法和decode()方法详解
  • 466
分享到

Python encode()方法和decode()方法详解

Python encode()方法Pythondecode()方法 2022-12-28 15:12:31 466人浏览 安东尼

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

摘要

目录python encode()方法Python decode()方法Python encode()方法 encode() 方法为字符串类型(str)提供的方法,用于将 str 类

Python encode()方法

encode() 方法为字符串类型(str)提供的方法,用于将 str 类型转换成 bytes 类型,这个过程也称为“编码”。

encode() 方法的语法格式如下:

str.encode([encoding="utf-8"][,errors="strict"])

注意,格式中用 [] 括起来的参数为可选参数,也就是说,在使用此方法时,可以使用 [] 中的参数,也可以不使用。

该方法各个参数的含义如表 1 所示。

表 1 encode()参数及含义

参数含义
str表示要进行转换的字符串。
encoding = "utf-8"指定进行编码时采用的字符编码,该选项默认采用 utf-8 编码。例如,如果想使用简体中文,可以设置 gb2312。

当方法中只使用这一个参数时,可以省略前边的“encoding=”,直接写编码格式,例如 str.encode("UTF-8")。
errors = "strict"指定错误处理方式,其可选择值可以是:
  • strict:遇到非法字符就抛出异常。
  • ignore:忽略非法字符。
  • replace:用“?”替换非法字符。
  • xmlcharrefreplace:使用 xml 的字符引用。
该参数的默认值为 strict。

注意,使用 encode() 方法对原字符串进行编码,不会直接修改原字符串,如果想修改原字符串,需要重新赋值。

【例 1】将 str 类型字符串“C语言”转换成 bytes 类型。

>>> str = "C语言"
>>> str.encode()
b'C\xe8\xaf\xad\xe8\xa8\x80\xe4\xb8\xad\xe6\x96\x87\xe7\xbd\x91'

此方式默认采用 UTF-8 编码,也可以手动指定其它编码格式,例如:

>>> str = "C语言"
>>> str.encode('GBK')
b'C\xd3\xef\xd1\xd4\xd6\xd0\xce\xc4\xcd\xf8'

Python decode()方法

和 encode() 方法正好相反,decode() 方法用于将 bytes 类型的二进制数据转换为 str 类型,这个过程也称为“解码”。

decode() 方法的语法格式如下:

bytes.decode([encoding="utf-8"][,errors="strict"])

该方法中各参数的含义如表 2 所示。

表 2 decode()参数及含义

参数含义
bytes表示要进行转换的二进制数据。
encoding="utf-8"指定解码时采用的字符编码,默认采用 utf-8 格式。当方法中只使用这一个参数时,可以省略“encoding=”,直接写编码方式即可。

注意,对 bytes 类型数据解码,要选择和当初编码时一样的格式。
errors = "strict"指定错误处理方式,其可选择值可以是:
  • strict:遇到非法字符就抛出异常。
  • ignore:忽略非法字符。
  • replace:用“?”替换非法字符。
  • xmlcharrefreplace:使用 xml 的字符引用。
该参数的默认值为 strict。

【例 2】

>>> str = "C语言"
>>> bytes=str.encode()
>>> bytes.decode()
'C语言'

注意,如果编码时采用的不是默认的 UTF-8 编码,则解码时要选择和编码时一样的格式,否则会抛出异常,例如:

>>> str = "C语言"
>>> bytes = str.encode("GBK")
>>> bytes.decode()  #默认使用 UTF-8 编码,会抛出以下异常
Traceback (most recent call last):
  File "<pyshell#10>", line 1, in <module>
    bytes.decode()
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd3 in position 1: invalid continuation byte
>>> bytes.decode("GBK")
'C语言'

到此这篇关于Python encode()方法和decode()方法的文章就介绍到这了,更多相关Python encode()方法内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python encode()方法和decode()方法详解

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python encode()方法和decode()方法详解
    目录Python encode()方法Python decode()方法Python encode()方法 encode() 方法为字符串类型(str)提供的方法,用于将 str 类...
    99+
    2022-12-28
    Python encode()方法 Python decode()方法
  • Python字符串编码转换encode()和decode()方法详细说明
    目录1.Python encode()方法 2.Python decode()方法 前言: 我们知道,最早的字符串编码是 ASCII 编码,它仅仅对 10 个数字、26 个大小写英文...
    99+
    2024-04-02
  • Python字符串编码转换encode()和decode()方法怎么使用
    这篇文章主要讲解了“Python字符串编码转换encode()和decode()方法怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python字符串编码转换encode()和deco...
    99+
    2023-06-25
  • python类方法和静态方法详解
    目录类方法静态方法1特点2使用场景总结类方法 需要用装饰器@classmethod来标识其为类方法,对于类方法,第一个参数必须是类对象,一般以cls作为参数 使用场景 1当方法中需要...
    99+
    2024-04-02
  • Python魔方方法详解
    原文链接: https://fishc.com.cn/forum.phpmod=viewthread&tid=48793&extra=page%3D1%26filter%3Dtypeid%26typeid%3D403 魔...
    99+
    2023-01-31
    魔方 详解 方法
  • Python 魔法方法详解
    据说,Python 的对象天生拥有一些神奇的方法,它们总被双下划线所包围,他们是面向对象的 Python 的一切。 他们是可以给你的类增加魔力的特殊方法,如果你的对象实现(重载)了这些方法中的某一个,那么这个方法就会在特殊的情况下被 Py...
    99+
    2023-01-31
    详解 方法 魔法
  • 详解python中@classmethod和@staticmethod方法
    在python类当中,经常会遇到@classmethod和@staticmethod这两个装饰器,那么到底它们的区别和作用是啥子呢?具体来看下。 @classmethod :默认有一...
    99+
    2024-04-02
  • springboot中encode方法怎么使用
    在Spring Boot中,可以使用PasswordEncoder接口的实现类来进行编码操作。一般来说,可以通过@Bean注解来将P...
    99+
    2024-03-07
    springboot
  • Python内置方法和属性详解
    目录1.1 _del_方法(知道)1.2 _str_ 方法总结 1.1 _del_方法(知道) 在Python中 当使用 类名()创建对象时,为对象 分配完空间后,自动 调用 _i...
    99+
    2024-04-02
  • Java构造方法和方法重载详解
    目录第一 构造方法的作用第二 构造方法的特点方法重载总结类的结构包括 : 1. 成员变量 2. 成员方法 3. 构造方法 4. 代码块 5. 内部类 第一 构造方法的作用 主要有以下...
    99+
    2024-04-02
  • python中torch.nn.identity()方法详解
    目录先看代码看源码应用总结先看代码 m = nn.Identity( 54, unused_argument1=0.1, unused_argument2=False ) in...
    99+
    2024-04-02
  • python中list方法详解
    目录一、创建一个列表二、 访问列表中的元素三、append 方法:四、extend 方法:五、insert 方法:六、remove 方法:七、pop 方法:八、del方法:...
    99+
    2023-05-17
    python list方法 python list
  • Python编程基础之构造方法和析构方法详解
    目录一、本讲学习目标二、构造方法(一)概述(二)案例演示三、析构方法(一)概述(二)案例演示四、self的使用(一)self概述(二)案例演示总结一、本讲学习目标 1.掌握构造方法的...
    99+
    2024-04-02
  • vue中使用jwt-decode解析token的方法
    安装: cnpm i -S jwt-decode 引入: import jwt_decode from "jwt-decode"; 使用: import jwt_decode f...
    99+
    2024-04-02
  • 关于python的编码与解码decode()方法及zip()函数
     先看示例 i=1 menu=["B超室","化验室"] user="张来,黎明,常冒,赵薇,吉舜锋,辛叶,冲余力,余人明,傅山,岳宁琳,昌紫衫,笆莎莉" usergrou...
    99+
    2023-05-17
    python编码 python解码 python zip()函数
  • Go语言类方法和对象方法详解
    go语言中,类方法(type)作用于整个结构体类型,用于执行不操作具体实例的操作。对象方法(receiver)绑定到具体实例,用于操作实例数据。实战案例中,类方法用于创建和获取员工信息,...
    99+
    2024-04-03
    方法 go语言
  • 详解Python常用的魔法方法
    目录一、python魔法方法二、运算符重载三、打印操作的魔法方法四、属性操作的魔法方法五、描述符六、定制序列七、迭代器一、python魔法方法 Python的魔法方法会在特定的情况下...
    99+
    2024-04-02
  • Python rindex()方法案例详解
    描述 Python rindex() 方法返回子字符串最后一次出现在字符串中的索引位置,该方法与 rfind() 方法一样,只不过如果子字符串不在字符串中会报一个...
    99+
    2024-04-02
  • 深入理解Oracle DECODE函数的使用方法
    Oracle数据库中的DECODE函数是一种非常常用的条件表达式函数,它的作用是根据不同的条件返回不同的值。本文将深入探讨Oracle DECODE函数的使用方法,并提供具体的代码示例...
    99+
    2024-03-08
    编程 oracle 深入理解 decode函数
  • python多线程方法详解
    处理多个数据和多文件时,使用for循环的速度非常慢,此时需要用多线程来加速运行进度,常用的模块为multiprocess和joblib,下面对两种包我常用的方法进行说明。 1、模块安...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作