python bytes转换为string_Python bytes string相互转换过程解析

本文详细介绍了Python中bytes和string的区别,以及如何进行两者之间的转换。通过示例代码展示了如何使用encode和decode方法进行编码和解码,强调了编码格式选择的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.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'

shuopython.com

二.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'

b'shuopython.com'

三.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博客。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值