【Python系列】字节串与字典字节串

news2024/11/17 0:41:13

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术点,如集合,jvm,并发编程 redis,kafka,Spring,微服务,Netty 等
    • 常用开发工具系列:罗列常用的开发工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

    • 一.什么是字节串
      • 1.基本介绍
      • 2.简单示例
    • 二.字典字节串

一.什么是字节串

1.基本介绍

字节串(bytes)是 Python 中的一种数据类型,用于表示二进制数据。它由一系列的字节组成,每个字节可以表示范围在 0 到 255 之间的整数。
在这里插入图片描述

与普通的字符串(str)不同,字节串不是由 Unicode 字符组成的,而是由原始字节序列组成的。这使得字节串可以用来表示诸如图像、音频、视频等二进制数据,以及与网络通信、文件操作等相关的原始数据。

在 Python 中,字节串使用以小写字母b开头的语法表示,例如b'hello'。字节串中的每个字节都可以通过索引访问,类似于普通字符串。由于字节串是不可变的,因此不能像普通字符串那样进行修改。

字节串还具有一些特殊的方法和操作,例如decode()方法用于将字节串解码为普通字符串,encode()方法用于将普通字符串编码为字节串。此外,可以进行字节串之间的拼接、切片等操作。

2.简单示例

以下是一个示例,展示了字节串的基本用法:

# 创建字节串
byte_string = b'hello'

# 访问字节串中的字节
print(byte_string[0])  # 输出:104

# 将字节串解码为普通字符串
decoded_string = byte_string.decode('utf-8')
print(decoded_string)  # 输出:hello

# 将普通字符串编码为字节串
encoded_string = 'world'.encode('utf-8')
print(encoded_string)  # 输出:b'world'

# 字节串之间的拼接
concatenated_bytes = byte_string + encoded_string
print(concatenated_bytes)  # 输出:b'helloworld'

字节串在处理二进制数据、与底层系统交互以及网络通信等方面非常有用。然而,需要注意的是,在处理文本数据时,通常更适合使用普通字符串(str)而不是字节串(bytes)。

二.字典字节串

在 Python 中,以小写字母b开头的字符串表示字节串(bytes)。字节串是一种特殊的数据类型,用于表示二进制数据。

在这里插入图片描述

b'relationship'的前缀b表示该键是一个字节串而不是普通的字符串。同样,值Value(sVal=b'\xe5\x8c\x85\xe6\x8b\xac')中的sVal也是一个字节串。

要访问字节串的值,可以使用相同的方法。例如,使用dictionary[b'relationship']来获取字节串键对应的值,使用dictionary[b'relationship'].sVal来获取字节串值中的sVal属性。

需要注意的是,字节串与普通字符串在表示和处理上有所不同。如果需要将字节串转换为普通字符串,可以使用字节串的decode()方法,指定适当的字符编码。例如,sVal_value = dictionary[b'relationship'].sVal.decode('utf-8在Python中,以小写字母b`开头的字符串表示字节串(bytes)。字节串是一种特殊的数据类型,用于表示二进制数据。

b'relationship'的前缀b表示该键是一个字节串而不是普通的字符串。同样,值Value(sVal=b'\xe5\x8c\x85\xe6\x8b\xac')中的sVal也是一个字节串。

要获取字节串的值,可以使用以下方法:

  1. 如果想将字节串转换为普通字符串,可以使用字节串的decode()方法,并指定适当的字符编码。例如,可以使用dictionary[b'relationship'].sVal.decode('utf-8')将字节串转换为 UTF-8 编码的字符串。

    dictionary = {b'relationship': Value(sVal=b'\xe5\x8c\x85\xe6\x8b\xac')}
    sVal_value = dictionary[b'relationship'].sVal.decode('utf-8')
    print(sVal_value)
    

    这将打印出sVal的字符串值,即包括

  2. 如果希望保持字节串的二进制表示,可以直接访问字节串的值,而无需进行转换。

    dictionary = {b'relationship': Value(sVal=b'\xe5\x8c\x85\xe6\x8b\xac')}
    sVal_value = dictionary[b'relationship'].sVal
    print(sVal_value)
    

    这将打印出sVal的字节串值,即b'\xe5\x8c\x85\xe6\x8b\xac'

可以根据需求选择适当的方法来处理字节串数据。

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1664771.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【高校科研前沿】北师大陈晋教授团队在遥感顶刊发表最新成果:ClearSCD模型:在高空间分辨率遥感影像中综合利用语义和变化关系进行语义变化检测

01文章简介 论文名称:The ClearSCD model: Comprehensively leveraging semantics and change relationships for semantic change detection in high spatial resolution remote sensing imagery(ClearSCD模型:在高空间分辨率遥感影像中综合…

Nextcloud私有云盘-重新定义云存储体验

Nextcloud私有云盘-重新定义云存储体验 1. 什么是Nextcloud ​ Nextcloud是一个开源的云存储和协作平台,旨在为个人用户、企业和团队提供安全、隐私保护的数据存储和共享解决方案。它允许您在不同设备之间同步、共享文件,提供了强大的协作工具和应用生…

VSCode:设置顶部文件标签页滚动条的宽度

使用VSCode打开多个文件后,顶部的文件标签可以通过滚动条进行滚动,但是缺点是该滚动条太窄了,不好选择。 可以通过如下方法修改改滚动条的宽度: 1.点击设置 2.选择工作台->编辑管理->Title Scrollbar Sizing->Large 3.可…

MSP430环境搭建

1.下载ccs编译器 注意:安装路径和工作路径不能出现中文! 没有说明的步骤就点next即可! 1.1下载适合自己电脑的压缩包。 下载好压缩包后解压,点击有图标进行安装。 1.2创建一个文件夹用于安装编译器位置 选择安装地址&#xff0…

FFmpeg常用API与示例(四)——过滤器实战

1.filter 在多媒体处理中,filter 的意思是被编码到输出文件之前用来修改输入文件内容的一个软件工具。如:视频翻转,旋转,缩放等。 语法:[input_link_label1]… filter_nameparameters [output_link_label1]… 1、视…

Mybatis操作数据库的两种方式:原生API

mybatis操作数据的两种方式:原生api和mapper代理对象 1.mybatis的api提供的方法 insert() 增加 delete() 删除 update() 更新 selectOne() 返回一个数据 selectList() 返回多个数据,结果类型为List selectMap() 返回多个数据&…

YOLOv5-7.0改进(四)添加EMA注意力机制

前言 关于网络中注意力机制的改进有很多种,本篇内容从EMA注意力机制开始! 往期回顾 YOLOv5-7.0改进(一)MobileNetv3替换主干网络 YOLOv5-7.0改进(二)BiFPN替换Neck网络 YOLOv5-7.0改进(三&…

net 7部署到Linux并开启https

1.修改代码设置后台服务运行 安装nuget包 Install-Package Microsoft.Extensions.Hosting.WindowsServices Install-Package Microsoft.Extensions.Hosting.Systemd在Program代码中设置服务后台运行 var builder WebApplication.CreateBuilder(args);if (System.OperatingS…

x6.js bug记录-流程图json数据导入进来之后拖拽节点,节点直接飞走了

添加josn数据进来之后虽然能正常渲染,但是只要一拖拽,则节点就直接飞走了,看不到了。 找了一下午的问题,最后发现。保存的json坐标位置是字符串类型,而这边的位置必须是数字类型。如下: {position: { x: &…

词令蚂蚁新村今日答案:微信小程序怎么查看蚂蚁新村今天问题的正确答案?

微信小程序怎么查看蚂蚁新村今天问题的正确答案? 1、打开微信,点击搜索框; 2、打开搜索页面,选择小程序搜索; 3、在搜索框,输入词令搜索点击进入词令微信小程序; 4、打开词令微信小程序关键词口…

基于Matplotlib的模型性能可视化工作

一、项目简介 本项目是科技考古墓葬识别工作的中间过程,因为需要大量复用所以另起一章好了。 主要涉及到数据读取、数据可视化和少量的数据处理过程。 二、相关知识 PandasMatplotlib 三、实验过程 1. 数据探索性分析 1.1 准备工作–导入模块 import pandas…

考研入门55问---基础知识篇

考研入门55问---基础知识篇 01 >什么是研究生入学考试? 研究生是指大专和本科之后的深造课程。以研究生为最高学历, 研究生毕业后,也可称研究生,含义为研究生学历的人。在中国大陆地区,普通民众一般也将硕士毕业生称…

JavaSE基础小知识Ⅱ(很容易错!!!)

1. 变量被final修饰后不能再指向其他对象,但可以重写 如果是引用变量被final修饰,那么的确如此; 基本变量不能重写 2. 下列代码的输出结果是? public class Test {static {int x 5; }static int x,y; public static void ma…

conan2 基础入门(01)-介绍

conan2 基础入门(01)-介绍 文章目录 conan2 基础入门(01)-介绍⭐什么是conan官网Why use Conan? ⭐使用现状版本情况个人知名开源企业 ⭐ConanCenter包中心github ⭐说明文档END ⭐什么是conan 官网 官网:Conan 2.0: C and C Open Source Package Manager 一句话来…

【Linux:lesson1】的基本指令

🎁个人主页:我们的五年 🔍系列专栏:Linux课程学习 🌷追光的人,终会万丈光芒 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 🚗打开Xshell,登陆root…

个人网站快速搭建手册:低成本,高效率,轻松发布

​🌈个人主页:前端青山 🔥系列专栏:React篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来-快速构建个人站|博客|系统,低成本发布上线 目录 前言 博主主页搭建案例 虚拟主机|服务器|域名 使用免费二级…

python实现九宫格图片切割

欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一.前言 二.代码 三.使用 四.分析 一.前言 朋友圈九宫格是一种在社交媒体上展示图片或内容的常见布局方式,特别是在微信朋友圈中非常流行。这种布局由九个相同大小的格子组成,通常用于展示一组相关的图片或内容。&…

线程知识点

一、线程 1.定义 线程:是一个进程并发执行多种任务的机制。 串行:多个任务有序执行,一个任务执行完毕后,再去执行下一个任务 并发:多个任务在单个CPU上运行,同一个时间片上只能运行一个任务,c…

数据的均匀化分割算法(网格划分法、四叉树法(含C++代码))

数据的均匀化分割主要是指在分割过程中尽可能均匀地将数据点分布在各个子区域中,以保持数据分布的平衡和优化数据结构的性能。以下是几种可以实现数据均匀化分割的方法: 一. 网格划分法 1. 基本概念 虽然传统的网格划分法不是动态调整的,但通…

软件验收计划书-验收规程(Word原件)

编写软件验收计划是软件开发过程中的一个关键步骤,其重要性体现在以下几个方面: 明确验收标准:软件验收计划详细列出了验收的标准、测试方法、测试环境等,确保所有相关人员对验收的期望和要求有清晰的认识。这有助于避免在验收阶段…