首页 > python教程

Python bytes string相互转换过程解析

时间:2020-08-07 python教程 查看: 818

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

展开全文
上一篇:Python对象的属性访问过程详解
下一篇:python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例
输入字:
相关知识
Python 实现图片色彩转换案例

我们在看动漫、影视作品中,当人物在回忆过程中,体现出来的画面一般都是黑白或者褐色的。本文将提供将图片色彩转为黑白或者褐色风格的案例详解,感兴趣的小伙伴可以了解一下。

python初学定义函数

这篇文章主要为大家介绍了python的定义函数,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助,希望能够给你带来帮助

图文详解Python如何导入自己编写的py文件

有时候自己写了一个py文件,想要把它导入到另一个py文件里面,所以下面这篇文章主要给大家介绍了关于Python如何导入自己编写的py文件的相关资料,需要的朋友可以参考下

python二分法查找实例代码

二分算法是一种效率比较高的查找算法,其输入的是一个有序的元素列表,如果查找元素包含在列表中,二分查找返回其位置,否则返回NONE,下面这篇文章主要给大家介绍了关于python二分法查找的相关资料,需要的朋友可以参考下