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脚本
Feb 10 Python
Python将一个CSV文件里的数据追加到另一个CSV文件的方法
Jul 04 Python
学生信息管理系统python版
Oct 17 Python
浅谈python 导入模块和解决文件句柄找不到问题
Dec 15 Python
Python编程深度学习计算库之numpy
Dec 28 Python
python+selenium实现自动化百度搜索关键词
Jun 03 Python
Python函数中的可变长参数详解
Sep 12 Python
关于Python 常用获取元素 Driver 总结
Nov 24 Python
Docker部署Python爬虫项目的方法步骤
Jan 19 Python
Python sep参数使用方法详解
Feb 12 Python
PyCharm 无法 import pandas 程序卡住的解决方式
Mar 09 Python
python uuid生成唯一id或str的最简单案例
Jan 13 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检测用户当前使用的浏览器是否为IE浏览器
2013/12/03 PHP
destoon整合ucenter后注册页面不跳转的解决方法
2014/06/21 PHP
PHP之浮点数计算比较以及取整数不准确的解决办法
2015/07/29 PHP
PHP4和PHP5版本下解析XML文档的操作方法实例分析
2017/05/20 PHP
定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
2019/05/23 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
js常用排序实现代码
2010/12/28 Javascript
js实现页面转发功能示例代码
2013/08/05 Javascript
js判断字符长度以及中英文数字等
2013/12/31 Javascript
深入解析桶排序算法及Node.js上JavaScript的代码实现
2016/07/06 Javascript
vue.js+boostrap项目实践(案例详解)
2016/09/21 Javascript
jquery实现图片切换代码
2016/10/13 Javascript
JS实现页面跳转参数不丢失的方法
2016/11/28 Javascript
js中的事件委托或是事件代理使用详解
2017/06/23 Javascript
webpack中CommonsChunkPlugin详细教程(小结)
2017/11/09 Javascript
微信小程序实现动态设置页面标题的方法【附源码下载】
2017/11/29 Javascript
js将键值对字符串转为json字符串的方法
2018/03/30 Javascript
Webpack的dll功能使用
2018/06/28 Javascript
SVG实现时钟效果
2018/07/17 Javascript
小程序视频或音频自定义可拖拽进度条的示例代码
2018/09/30 Javascript
js实现复制粘贴的两种方法
2020/12/04 Javascript
Vue实现点击当前行变色
2020/12/14 Vue.js
python爬虫_自动获取seebug的poc实例
2017/08/05 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
2019/04/06 Python
pyqt 实现为长内容添加滑轮 scrollArea
2019/06/19 Python
python 字符串追加实例
2019/07/20 Python
Python常用扩展插件使用教程解析
2020/11/02 Python
python中pyqtgraph知识点总结
2021/01/26 Python
用CSS3的box-reflect设置文字倒影效果的方法讲解
2016/03/07 HTML / CSS
伦敦一家非常流行的时尚精品店:Oxygen Boutique
2017/01/15 全球购物
what is the difference between ext2 and ext3
2015/08/25 面试题
大学自我评价
2014/02/12 职场文书
中国梦演讲稿教师篇
2014/04/23 职场文书
节能标语大全
2014/06/21 职场文书
幼儿老师求职信
2014/06/30 职场文书
社区个人对照检查材料(群众路线)
2014/09/26 职场文书