Python bytes string相互转换过程解析

 更新时间:2020年03月05日 09:59:32   作者:猿说python  
这篇文章主要介绍了Python bytes string相互转换过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一.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基于欧拉角绘制一个立方体

    这篇文章主要为大家详细介绍了Python如何基于欧拉角实现绘制一个立方体,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-02-02
  • Python利用缓存流实现压缩PDF文件

    Python利用缓存流实现压缩PDF文件

    在Python中,有许多库可以用来压缩PDF文件,其中最常用的是PyPDF2和PDFMiner,本文将为大家介绍一个新的方法,即使用缓存流压缩PDF文件,感兴趣的可以了解下
    2023-08-08
  • 在Python中如何让字典保持有序

    在Python中如何让字典保持有序

    这篇文章主要介绍了在Python中如何让字典保持有序,文章基于python的相关资料展开详细内容,需要的小伙伴可以参考一下
    2022-04-04
  • Python爬取APP下载链接的实现方法

    Python爬取APP下载链接的实现方法

    这篇文章主要实现的是批量下载安卓APP。显然用手点是不科学的。于是尝试用Python写了一个半自动化的脚本。所谓半自动化,就是把下载链接批量抓取下来,然后一起贴到迅雷里进行下载,这样可以快速批量下载。有需要的朋友们可以一起看看吧。
    2016-09-09
  • 五个方便好用的Python自动化办公脚本的实现

    五个方便好用的Python自动化办公脚本的实现

    在没有人工干预的情况下,机器可以自己完成各项任务,这大大提升了工作效率。Python因为语法简洁易懂,而且有丰富的第三方工具库,所以非常适合编写自动化脚本,本文就为大家带来了五个这样的脚本,需要的可以参考一下
    2022-01-01
  • Python监听剪切板实现方法代码实例

    Python监听剪切板实现方法代码实例

    这篇文章主要介绍了Python监听剪切板实现方法代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • 一行Python命令实现批量加水印

    一行Python命令实现批量加水印

    工作的时候,尤其是自媒体工作者,必备水印添加工具以保护知识产权。本文为大家提供了一个快速加水印的方法:一行Python命令就能实现,快来了解一下吧
    2022-04-04
  • Python安全隐患最新URL解析漏洞防范措施

    Python安全隐患最新URL解析漏洞防范措施

    这篇文章主要为大家介绍了Python安全隐患,最新URL解析漏洞的防范措施,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • Python实现的中国剩余定理算法示例

    Python实现的中国剩余定理算法示例

    这篇文章主要介绍了Python实现的中国剩余定理算法,结合实例形式分析了中国剩余定理的概念、原理及具体算法实现技巧,需要的朋友可以参考下
    2017-08-08
  • Keras 多次加载model出错的解决方案

    Keras 多次加载model出错的解决方案

    这篇文章主要介绍了Keras 多次加载model出错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05

最新评论