Python bytes string相互转换过程解析


Posted in Python onMarch 05, 2020

一.bytes和string区别

1.python bytes 也称字节序列,并非字符。取值范围 0 <= bytes <= 255,输出的时候最前面会有字符b修饰;string 是python中字符串类型;

2.bytes主要是给在计算机看的,string主要是给人看的;

3.string经过编码encode,转化成二进制对象,给计算机识别;bytes经过解码decode,转化成string,让我们看,但是注意反编码的编码规则是有范围,\xc8就不是utf8识别的范围;

if __name__ == "__main__":
 # 字节对象b
 b = b"shuopython.com"
 # 字符串对象s
 s = "shuopython.com"
 print(b)
 print(type(b))
 print(s)
 print(type(s))

输出结果:

b'shuopython.com'
<class 'bytes'>
shuopython.com
<class 'str'>

二.bytes转string

string经过编码encode转化成bytes

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:何以解忧
@Blog(个人博客地址): shuopython.com
@WeChat Official Account(微信公众号):猿说python
@Github:www.github.com
 
@File:python_bytes_string.py
@Time:2020/2/26 21:25
 
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
if __name__ == "__main__":
 s = "shuopython.com"
 # 将字符串转换为字节对象
 b2 = bytes(s, encoding='utf8') # 必须制定编码格式
 # print(b2)
 
 # 字符串encode将获得一个bytes对象
 b3 = str.encode(s)
 b4 = s.encode()
 print(b3)
 print(type(b3))
 print(b4)
 print(type(b4))

输出结果:

b'shuopython.com'
<class 'bytes'>
b'shuopython.com'
<class 'bytes'>

三.string转bytes

bytes经过解码decode转化成string

if __name__ == "__main__":
 # 字节对象b
 b = b"shuopython.com"
 print(b)
 b = bytes("猿说python", encoding='utf8')
 print(b)
 s2 = bytes.decode(b)
 s3 = b.decode()
 print(s2)
 print(s3)

输出结果:

b'shuopython.com'
b'\xe7\x8c\xbf\xe8\xaf\xb4python'
猿说python
猿说python

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python批量修改文件后缀的方法
Jan 26 Python
python实现进程间通信简单实例
Jul 23 Python
Python开发之快速搭建自动回复微信公众号功能
Apr 22 Python
深入理解python函数递归和生成器
Jun 06 Python
python实现一个简单的并查集的示例代码
Mar 19 Python
Python函数参数操作详解
Aug 03 Python
pytorch 更改预训练模型网络结构的方法
Aug 19 Python
python线程定时器Timer实现原理解析
Nov 30 Python
利用Python中的Xpath实现一个在线汇率转换器
Sep 09 Python
解决Pytorch半精度浮点型网络训练的问题
May 24 Python
python 如何做一个识别率百分百的OCR
May 29 Python
Python标准库之typing的用法(类型标注)
Jun 02 Python
Python 从attribute到property详解
Mar 05 #Python
Python+OpenCV实现图像的全景拼接
Mar 05 #Python
Python对象的属性访问过程详解
Mar 05 #Python
Python安装OpenCV的示例代码
Mar 05 #Python
opencv python在视屏上截图功能的实现
Mar 05 #Python
谈谈Python:为什么类中的私有属性可以在外部赋值并访问
Mar 05 #Python
python如何将两张图片生成为全景图片
Mar 05 #Python
You might like
PHP 批量删除数据的方法分析
2009/10/30 PHP
PHP魔术引号所带来的安全问题分析
2014/07/15 PHP
PHP编写RESTful接口的方法
2016/02/21 PHP
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
2017/09/02 PHP
Javascript操作select方法大全[新增、修改、删除、选中、清空、判断存在等]
2008/09/26 Javascript
js监听鼠标点击和键盘点击事件并自动跳转页面
2014/09/24 Javascript
jQuery中parent()方法用法实例
2015/01/07 Javascript
JavaScript中的值是按值传递还是按引用传递问题探讨
2015/01/30 Javascript
jQuery仿360导航页图标拖动排序效果代码分享
2015/08/24 Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
2015/11/25 Javascript
javascript日期比较方法实例分析
2016/06/17 Javascript
vue分类筛选filter方法简单实例
2017/03/30 Javascript
jQuery EasyUI结合zTree树形结构制作web页面
2017/09/01 jQuery
Vuex模块化应用实践示例
2020/02/03 Javascript
Node使用Nodemailer发送邮件的方法实现
2020/02/24 Javascript
element el-tree组件的动态加载、新增、更新节点的实现
2020/02/27 Javascript
js实现双色球效果
2020/08/02 Javascript
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
[00:32]2018DOTA2亚洲邀请赛EG出场
2018/04/03 DOTA
python实现在目录中查找指定文件的方法
2014/11/11 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
Python3多线程爬虫实例讲解代码
2018/01/05 Python
Python/Django后端使用PIL Image生成头像缩略图
2019/04/30 Python
python将print输出的信息保留到日志文件中
2019/09/27 Python
详解Python3迁移接口变化采坑记
2019/10/11 Python
使用keras实现densenet和Xception的模型融合
2020/05/23 Python
ToysRus日本官网:玩具反斗城
2018/09/08 全球购物
英国家用电器折扣网站:Electrical Discount UK
2018/09/17 全球购物
监理员的岗位职责
2013/11/13 职场文书
乡镇信息公开实施方案
2014/03/23 职场文书
质量在我心中演讲稿
2014/09/02 职场文书
群众路线教育实践活动个人对照检查材料思想汇报(社区班子)
2014/10/06 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
spring cloud gateway中如何读取请求参数
2021/07/15 Java/Android
Go语言读取txt文档的操作方法
2022/01/22 Golang
vue项目中的支付功能实现(微信支付和支付宝支付)
2022/02/18 Vue.js