python3 字符串str和bytes相互转换


Posted in Python onMarch 23, 2022

1.相关基础

python3中有两种字符串类型:strbytes

strunicode编码格式保存在内存

所以使用时,不用管前面要不要加u

(python2中需要考虑,不加u的话,在一些场合会报错)

#!/usr/bin/python3
str0="i am fine thank you"
 
print(type(str0))
print(str0)
 
str0=u"i am fine thank you"
 
print(type(str0))
print(str0)
 
# <class 'str'>
# i am fine thank you
# <class 'str'>
# i am fine thank you

定义byte类型时,在字符串前加b

#!/usr/bin/python3
str0=b"i am fine thank you"
 
print(type(str0))
print(str0)
 
# <class 'bytes'>
# b'i am fine thank you'

2.str和bytes相互转换

在文件传输过程中,通常使用bytes格式的数据流,而代码中通常用str类型,因此strbytes的相互转换就尤为重要。

2.1 bytes->str

#!/usr/bin/python3
 
bytes_data = b'this is a message'
print(type(bytes_data))
print(bytes_data)
 
# 方法一:
str_data = str(bytes_data, encoding='utf-8')
print(type(str_data))
print(str_data)
 
# 方法二:
str_data = bytes_data.decode('utf-8')
print(type(str_data))
print(str_data)
 
# <class 'bytes'>
# b'this is a message'
# <class 'str'>
# this is a message
# <class 'str'>
# this is a message

2.2 str->bytes

#!/usr/bin/python3
 
str_data = 'this is a message'
print(type(str_data))
print(str_data)
# 方法一:
bytes_data = bytes(str_data, encoding='utf-8')
print(type(bytes_data))
print(bytes_data)
# 方法二:
bytes_data = str_data.encode('utf-8')
print(type(bytes_data))
print(bytes_data)
 
# <class 'str'>
# this is a message
# <class 'bytes'>
# b'this is a message'
# <class 'bytes'>
# b'this is a message'

到此这篇关于python3 字符串str和bytes相互转换的文章就介绍到这了,更多相关python3 str与bytes内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python使用beautifulsoup从爱奇艺网抓取视频播放
Jan 23 Python
python字典DICT类型合并详解
Aug 17 Python
pytorch cnn 识别手写的字实现自建图片数据
May 20 Python
Python3获取电脑IP、主机名、Mac地址的方法示例
Apr 11 Python
python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】
Jun 17 Python
Python监控服务器实用工具psutil使用解析
Dec 19 Python
python numpy 矩阵堆叠实例
Jan 17 Python
Python ADF 单位根检验 如何查看结果的实现
Jun 03 Python
Python判断字符串是否为合法标示符操作
Sep 03 Python
Python 机器学习工具包SKlearn的安装与使用
May 14 Python
FP-growth算法发现频繁项集——发现频繁项集
Jun 24 Python
python识别围棋定位棋盘位置
Jul 26 Python
对象析构函数__del__在Python中何时使用
详解Python内置模块Collections
Mar 22 #Python
Python中 range | np.arange | np.linspace三者的区别
Python中非常使用的6种基本变量的操作与技巧
python使用torch随机初始化参数
Mar 22 #Python
Django基础CBV装饰器和中间件
详解pytorch创建tensor函数
Mar 22 #Python
You might like
PHP 中的批处理的实现
2007/06/14 PHP
PHP 程序员应该使用的10个组件
2009/10/31 PHP
php中session_id()函数详细介绍,会话id生成过程及session id长度
2015/09/23 PHP
php readfile下载大文件失败的解决方法
2017/05/22 PHP
Laravel 队列使用的实现
2019/01/08 PHP
PHP PDOStatement::errorInfo讲解
2019/01/31 PHP
PHP设计模式(四)原型模式Prototype实例详解【创建型】
2020/05/02 PHP
用JS实现的一个include函数
2007/07/21 Javascript
javascript 对象定义方法 简单易学
2009/03/22 Javascript
JavaScript面向对象之静态与非静态类
2010/02/03 Javascript
Date对象格式化函数代码
2010/07/17 Javascript
js 关键词高亮(根据ID/tag高亮关键字)案例介绍
2013/01/21 Javascript
Jquery 表单验证类介绍与实例
2013/06/09 Javascript
js中实现多态采用和继承类似的方法
2014/08/22 Javascript
javascript与Python快速排序实例对比
2015/08/10 Javascript
学习jQuey中的return false
2015/12/18 Javascript
JavaScript面向对象程序设计教程
2016/03/29 Javascript
微信小程序-滚动消息通知的实例代码
2017/08/03 Javascript
vue表单验证你真的会了吗?vue表单验证(form)validate
2019/04/07 Javascript
python实现的重启关机程序实例
2014/08/21 Python
Python多层嵌套list的递归处理方法(推荐)
2016/06/08 Python
python使用turtle库与random库绘制雪花
2018/06/22 Python
Python+selenium 获取一组元素属性值的实例
2018/06/22 Python
对python xlrd读取datetime类型数据的方法详解
2018/12/26 Python
Python使用itchat 功能分析微信好友性别和位置
2019/08/05 Python
Django1.11配合uni-app发起微信支付的实现
2019/10/12 Python
python双向链表原理与实现方法详解
2019/12/03 Python
Python使用psutil获取进程信息的例子
2019/12/17 Python
使用PyTorch实现MNIST手写体识别代码
2020/01/18 Python
Selenium环境变量配置(火狐浏览器)及验证实现
2020/12/07 Python
tensorflow与numpy的版本兼容性问题的解决
2021/01/08 Python
结合CSS3的新特性来总结垂直居中的实现方法
2016/05/30 HTML / CSS
中考冲刺决心书
2014/03/11 职场文书
2016年学习雷锋精神广播稿
2015/12/17 职场文书
pytorch中Schedule与warmup_steps的用法说明
2021/05/24 Python
学会Python数据可视化必须尝试这7个库
2021/06/16 Python