前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python - bytes与字符串的相互转化

Python - bytes与字符串的相互转化

作者头像
小菠萝测试笔记
发布2020-06-09 15:19:10
5250
发布2020-06-09 15:19:10
举报

decode和encode的区别和介绍

by.decode(encoding='UTF-8',errors='strict')

str.encode(encoding='UTF-8',errors='strict')

  • 显而易见decode是解码,encode是编码
  • 解码代表bytes类型转成str类型
  • 编码代表str类型转成bytes类型
  • 而bytes类型的数据一般在写入文件时需要用到

直接上代码

代码语言:javascript
复制
 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 
 4 """
 5 __title__  = 
 6 __Time__   = 2020/2/21 15:56
 7 
 8 """
 9 # bytes转字符串方式一
10 b = b'\xe9\x80\x86\xe7\x81\xab'
11 string = str(b, 'utf-8')
12 print(string)
13 
14 # bytes转字符串方式二
15 b = b'\xe9\x80\x86\xe7\x81\xab'
16 string = b.decode()  # 第一参数默认utf8,第二参数默认strict
17 print(string)
18 
19 # bytes转字符串方式三
20 b = b'\xe9\x80\x86\xe7\x81haha\xab'
21 string = b.decode('utf-8', 'ignore')  # 忽略非法字符,用strict会抛出异常
22 print(string)
23 
24 # bytes转字符串方式四
25 b = b'\xe9\x80\x86\xe7\x81haha\xab'
26 string = b.decode('utf-8', 'replace')  # 用?取代非法字符
27 print(string)
28 
29 # 字符串转bytes方式一
30 str1 = '逆火'
31 b = bytes(str1, encoding='utf-8')
32 print(b)
33 
34 # 字符串转bytes方式二
35 b = str1.encode('utf-8')
36 print(b)

执行结果

代码语言:javascript
复制
逆火
逆火
逆haha
逆�haha�
b'\xe9\x80\x86\xe7\x81\xab'
b'\xe9\x80\x86\xe7\x81\xab'
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-02-21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • decode和encode的区别和介绍
  • 直接上代码
  • 执行结果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档