分析Python3中的bytes和str类型

时间:2022-10-09 17:32:53 | 浏览:333

从例子可以看出,s是个字符串类型。Python有个内置函数bytes()可以将字符串str类型转换成bytes类型,b实际上是一串01的组合,但为了在ide环境中让我们相对直观的观察,它被表现成了b’xe4xb8xadxe6x96

从例子可以看出,s是个字符串类型。Python有个内置函数bytes()可以将字符串str类型转换成bytes类型,b实际上是一串01的组合,但为了在ide环境中让我们相对直观的观察,它被表现成了b’xe4xb8xadxe6x96x87’这种形式,开头的b表示这是一个bytes类型。xe4是十六进制的表示方式,它占用1个字节的长度,因此”中文“被编码成utf-8后,我们可以数得出一共用了6个字节,每个汉字占用3个,这印证了上面的论述。在使用内置函数bytes()的时候,必须明确encoding的参数,不可省略。

我们都知道,字符串类str里有一个encode()方法,它是从字符串向比特流的编码过程。而bytes类型恰好有个decode()方法,它是从比特流向字符串解码的过程。除此之外,我们查看Python源码会发现bytes和str拥有几乎一模一样的方法列表,最大的区别就是encode和decode。

从实质上来说,字符串在磁盘上的保存形式也是01的组合,也需要编码解码。

如果,上面的阐述还不能让你搞清楚两者的区别,那么记住下面两几句话:

  1. 在将字符串存入磁盘和从磁盘读取字符串的过程中,Python自动地帮你完成了编码和解码的工作,你不需要关心它的过程。

  2. 使用bytes类型,实质上是告诉Python,不需要它帮你自动地完成编码和解码的工作,而是用户自己手动进行,并指定编码格式。

  3. Python已经严格区分了bytes和str两种数据类型,你不能在需要bytes类型参数的时候使用str参数,反之亦然。这点在读写磁盘文件时容易碰到。

在bytes和str的互相转换过程中,实际就是编码解码的过程,必须显式地指定编码格式。

我们再把字符串s1,转换成gbk编码的bytes类型:

相关资讯

重磅来袭!Python3.10正式版发布了!我还在用3.6

来源:juejin.cn/post/7015590447745613854Python 3.10正式发布,你尝鲜了吗?本文参考自 Python官方文档 :Python Release Python 3.10.0 | Python.org[1

什么是Python?为什么要学习Python?

第一期计算机等考二级程序设计科目的学习,我们从简单易学的Python开始,今天,就让我们揭开它神秘的面纱!我们先看三组数据:第一组呢是TIOBE指数排行,可以看到我们的Python在今年三月份排在了榜首的位置,相比去年的三月份,Python

Python3.9又更新了:dict内置新功能,正式版十月见面

机器之心报道参与:一鸣、JaminPython3.8 的热乎劲还没过去,Python 就又双叒叕要更新了。近日,3.9 版本的第四个 alpha 版已经开源。从文档中,我们可以看到官方透露的对 dict、math 等组件增加的新特性,以及下

iPhone14发布在即8月苹果手机购买指南

马上就要到8月份了,想必大家都很想要了解在iPhone14即将于9月发布的情况下,应该如何选择苹果手机,当下又都有哪些苹果手机型号值得购买,今天我们便来聊一聊。首先对于大多数用户而言,目前性价比划算的选择,同时也是大家日常使用的首选便是标准

首发即破发?iPhone14Plus开售第三方渠道便宜400

【手机中国新闻】国庆假期最后一天,iPhone 14系列最后一款新机——iPhone 14 Plus正式上市开售。根据内存版本不同,新机售价分别为6999元、7899元以及9699元。不过该机开售后,市场反响却并没有达到预期的效果。截至发稿

苹果无奈,iPhone14Plus首销破发,网友:降到六千便是真香

时间过得很快,转眼间已经到了10月7号,与此同时iPhone14 Plus也是迎来了首销,熟悉iPhone14系列的朋友应该知道,iPhone14系列共有四个版本,其中iPhone14、iPhone14 Pro以及iPhone14 Pro

等等党又赚了!iPhone多个机型即将降价,苹果也要打价格战?

有外媒报道,苹果现在已经开始准备对旧款iPhone进行调价,具体到产品,预计在iPhone 14系列发布前后,iPhone 11系列将在官方下架,iPhone 12的起售价将降至599美元,iPhone 12 mini则会降至499美元,这

当有了iPhone之后,双机党第二款手机该怎么选,才能平掉苹果的坑

前言在如今的手机市场,苹果三星华为是研发实力最强大的三大手机厂商,它们的产品不仅集成了众多的先进技术,同时产品也深受消费者的喜爱。苹果iPhone是手机市场中深受消费者喜爱的产品之一,也是目前市面上各家作为超越目标的标杆产品之一。我觉得好的

不用着急买iPhone13,iPhoneSE3即将发布,最便宜的5G苹果手机

苹果公司将在 2022 年初推出一款特别版智能手机。目前据外媒表示苹果这款特别的智能手机或将会搭载A14 仿生芯片,并拥有类似iPhone12的设计。现在,一位爆料者表明 iPhone SE 3(iPhone SE 2022)会将成为最便宜

目前最好用的3款iPhone手机,性价比极高,有你在用的吗

iPhone手机一直以来,收到的争议就比较大。但不管是好的还是坏的,都不影响iPhone手机的销量,到现在还占据了国内大部分市场,身边10个人里估计就有4、5个人在使用iPhone手机。那么,iPhone手机目前最好用的3款,有你正在用的吗

友情链接

SEO域名抢注宝宝起名网妈妈知道币圈宁德时代A股夏普电视评测网西瓜品种科普网荆州新闻头条网翻译在线网站品酒师资讯网福建旅游网保洁服务网九阳豆浆机评测网大理旅游网原油期货网免费抽签网葡萄品种网巴马香猪养殖杰森斯坦森影迷网
python编程教学网-python数据库开发教程、python基础知识入门、python数据库编程入门、python语法基础、python下载安装教程、python下载手机版、python翻译器下载手机版、python翻译器代码、python语言翻译、python基础代码、python编程自学网。
python编程教学网 dadeji.cn ©2022-2028版权所有