python3 字符串str和bytes相互转换
作者:Newjet666 发布时间:2023-03-31 09:12:47
标签:python3,字符串str,bytes,相互转换
1.相关基础
python3中有两种字符串类型:str
和bytes
python编码问题可以参考文章
str
以unicode
编码格式保存在内存
所以使用时,不用管前面要不要加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类型,因此str
和bytes
的相互转换就尤为重要。
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'
来源:https://blog.csdn.net/kids_budong_c/article/details/123672994?


猜你喜欢
- 效果如下图:当点击问题时显示下面的回复内容。script type="text/javascript"> onlo
- Python 读取WAV文件import waveimport structfrom scipy import *from pylab im
- 空间关系变化始于相遇,所以交点是一切的核心。相交判定首先考察一束光线能否打在某个平面镜上。光线被抽象成了一个列表[a,b,c],平面镜则被抽
- UserWarning: indexing with dtype torch.uint8 is now deprecated, please
- Pygame是一个超好用的SDL绑定。自从有了Pygame,妈妈再也不用担心我内存泄漏了。但是这里有一个问题,Pygame的Movie模块已
- import md5 import sys def sumfile(fobj): m = md5.new() while True: d =
- 前沿以前go工程都是在我mac上打包成镜像然后再推到我的docker hub上去,每次更新都要经过打包->推送到dockert仓库-&
- PHP引擎php.ini参数优化无论是apache还是nginx,php.ini都是适合的。而php-fpm.conf适合nginx+fcg
- 1、引言小 * 丝:鱼哥, 都说要想代码写的溜,Lamdba不能少。小鱼:你在项目代码多写几个lamdba试试,看看架构师找不找你喝茶水。小 * 丝
- 最近开始在项目中使用Quickwork For Asp,虽然该框架是自己独立完成的,不过功能没做过详细的总结,所以很多参数总是会弄错,毕竟鱼
- 本文实例讲述了MySQL中USING 和 HAVING 用法。分享给大家供大家参考,具体如下:USING用于表连接时给定连接条件(可以理解为
- 方式1:静态获取,通过直接解析checkpoint文件获取变量名及变量值通过reader = tf.train.NewCheckpointR
- 这个问题是编码的问题在开头导入个包就行了,简答粗暴import encodings.idna补充:执行Python出现LookupError
- 下面通过图文并茂的方式展示如下:一、SQL Profiler 事件类 Stored Procedures\RPC:Complete
- 一:背景引入对于一张图片,怎样修改局部像素值?二:利用Tensor方法比如输入全零tensor,可认为为黑色图片>>> n
- nth-child(),是CSS3中的一个伪类选择符,JQuery选择器继承了CSS的部分语法,允许通过标签名、属性名、内容对DOM元素进行
- 简单展示如何利用python中的pandas库创建、读取、修改CSV数据文件1 写入CSV文件import numpy as npimpor
- 目的实现字符串的左对齐,右对齐,居中对齐。方法 字符串内置了以下方法:其中width是指包含字符串S在内的宽度,fillchar默认是空格,
- 这篇文章主要介绍了Pandas数据离散化原理及实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋
- vi /etc/sysconfig/iptables 在后面添加 -A RH-Firewall-1-INPUT -m state --sta