Python中的编码

编码与解码

encode()方法 把字符串变成用于存储或传输的字节序列就是编码
decode()方法 把字节序列变成人类可读的文本字符串就是解码
示例 4-1 编码
在这里插入图片描述
在这里插入图片描述

如果想帮助自己记住 .decode() 和 .encode() 的区别,可以把字节序列想成晦涩难懂的机器磁芯转储,把 Unicode 字符串想成“人类可读”的文本。那么,把字节序列变成人类可读的文本字符串就是解码,而把字符串变成用于存储或传输的字节序列就是编码

4.5 处理文本文件
处理文本的最佳实践是“Unicode 三明治”(如图 4-2 所示)。 意思是,
要尽早把输入(例如读取文件时)的字节序列解码成字符串。这种三明
治中的“肉片”是程序的业务逻辑,在这里只能处理字符串对象。在其他
处理过程中,一定不能编码或解码。对输出来说,则要尽量晚地把字符
串编码成字节序列。多数 Web 框架都是这样做的,使用框架时很少接
触字节序列。例如,在 Django 中,视图应该输出 Unicode 字符串;
Django 会负责把响应编码成字节序列,而且默认使用 UTF-8 编码
在这里插入图片描述

Unicode 三明治——目前处理文本的最佳实践
在 Python 3 中能轻松地采纳 Unicode 三明治的建议,因为内置的 open
函数会在读取文件时做必要的解码,以文本模式写入文件时还会做必要
的编码,所以调用 my_file.read() 方法得到的以及传给
my_file.write(text) 方法的都是字符串对象。
Python 2.6 或 Python 2.7 用户要使用 io.open() 函数才能得到读写文件时自动执行的解码和编
码操作。

来看下面的一段代码
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值