python基础13_字符编码

什么是字符编码呢?

在讲字符编码的之前,我先讲一个东西叫字符集

什么是字符集呢?

python默认的字符集unicode

很简单,就是他把大部分国家的文字,符号,都集合过来,每一个文字或者说是符号都有一个编号去代表

你可以理解成高考

每个考生的准考证号,就代表这个学生

那么字符集也是一样的道理

每个编号就代表这个字符

a = "你"
# 那么它的字符集编号怎么看呢?
print(ord(a))
# 那么我们也可以通过字符集编号,查看它代表的字符
print(chr(20321))

再回过头来讲讲什么是字符编码

在讲字符编码之前,我在讲讲字节,

讲字节之前我在讲讲生活中的例子

你的一个文件的大小,单位是什么?

b,byte,kb,M,G,T

11111111

上面那个二进制数是8位

也就是是8b

换算

1byte (字节) = 8b

1kb = 1024byte

1M = 1024kb

1G = 1024M

1T = 1024G

前面这个就是代表数据的大小

在仔细讲讲字节

一个字节是8位

11111111

那么8位能够代表的数是不是最多可以代表256

也就是说一个字节可以代表256个数

如果一个数就代表一个字的话,那么是不是一个字节就可以代表256个字呢

我们中华文化博大精深对吧

肯定不止256个字啊

所以用两个字节去表示

这个时候两个字节有几种变化呢?

65536

但是我们汉字不止65536对吧

所以我们用三个字节

三个字节的变化就肯定能够包括所有的汉字了,每一种可能就是代表一个汉字

a = "你"
"那么现在用utf-8的编码格式,去把这个汉字换成字节"
print(a.encode("utf-8"))
"b'\xe4\xbd\xa0'"
# 这就是一个16进制的数,只是方便我们看而已,也就是换成10进制,代表的就是228,189,160这几个数组合就代表了你这个字
print(a.encode("gbk"))
# 196 227 两个字节就代表了这个你这个字符

 我们传输数据的时候,一个字,是怎么传输的

因为每个字都有一个编号(字符集里面的),然后我们再通过不同的编码格式,把这个编号(转码)转换成字节码(16进制),然后传输的时候,再转换成二进制,也就是电信号啥的,然后到你手机,或者你电脑,再转成字节码(16进制),然后在转成你看见的字(解码)

a = "你"
b = a.encode("utf-8")
print(b)
"下面就是把16进制解码成字符"
c = b.decode("utf-8")
print(c)

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

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

相关文章

JVM垃圾收集器-serial.parNew,parallelScavnge,serialOld,parallelOld,CMS,G1

垃圾收集器 分代模型 适用于新生代: serial parNew parallel Scaavenge 适用于老年代: CMS serial Old(msc) paraller Old 分区模型 适用于超大容量: G1 分代模型 serial /serial Old收集器 1.单线程收集器 2.收集时会暂停其他线程&…

剑指offer C ++双栈实现队列

1. 基础 队列:先进先出,即插入数据在队尾进行,删除数据在队头进行; 栈:后进先出,即插入与删除数据均在栈顶进行。 2. 思路 两个栈实现一个队列的思想:用pushStack栈作为push数据的栈&#xff…

使用canvas绘制超炫时钟

HTML5 Canvas相当于一个画板,你可以在Canvas绘制任意的东西,今天要分享一款利用HTML5 Canvas绘制的超炫时钟的方法及代码,非常的漂亮,这里推荐给大家 代码地址 使用canvas绘制超炫时钟

react中JSX的详解

目录 JSX的本质及其与JavaScript的关系探究 一、JSX的本质 二、JSX与JavaScript的关系 三、为什么要使用JSX 四、不使用JSX的后果 五、JSX背后的功能模块 JSX的本质及其与JavaScript的关系探究 在React开发中,JSX是一个不可或缺的部分。那么,JSX的…

LeetCode102题:二叉树的层序遍历(python3)

代码思路:使用队列先进先出的特性,queue[]不为空进入for循环,tmp存储每层的节点,将结果添加至res[]中。 python中使用collections中的双端队列deque(),其popleft()方法可达到O(1)时间复杂度。 class Solution:def lev…

5.62 BCC工具之cpudist.py解读

一,工具简介 cpudist会将任务在CPU上的时间汇总为直方图,显示任务在被取消调度之前在CPU上花费的时间。这提供了有价值的信息,可以指示过度订阅(处理器太少而任务太多)、由于过多上下文切换而产生的开销(例如,多个线程共用的常见锁)、工作负载分布不均、任务过于细化等…

数据结构 第1章:绪论

文章目录 1. 绪论1.1. 数据结构 1.2. 算法1.2.1. 算法的基本概念1.2.2. 算法的时间复杂度1.2.3. 算法的空间复杂度 1. 绪论 程序 数据结构 算法 1.1. 数据结构 数据:是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理…

【机器学习300问】33、决策树是如何进行特征选择的?

还记得我在【机器学习300问】的第28问里谈到的,看决策树的定义不就是if-else语句吗怎么被称为机器学习模型?其中最重要的两点就是决策树算法要能够自己回答下面两问题: 该选哪些特征 特征选择该选哪个阈值 阈值确定 今天这篇文章承接上文&…

神经网络中的先验知识

单调性约束: 单调性约束对于某些问题非常关键,可以确保模型输出与输入的关系保持单调。在我的实践中,我发现通过引入这种约束,能够有效提高模型的性能,特别是在需要保持某些顺序关系的任务上。 平滑性约束&#xff1a…

探秘高校线上心理咨询室:Java+SpringBoot的实践

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

蓝桥·算法双周赛|第七场分级赛——小白入门赛

&#x1f525;博客介绍&#xff1a; 27dCnc &#x1f3a5;系列专栏&#xff1a; <<数据结构与算法>> << 算法入门>> << C项目>> &#x1f3a5; 当前专栏: << 算法入门>> 专题 : 数据结构帮助小白快速入门算法 &#x1f4…

解锁Redis宝藏:探索Redis哈希(Hash)的神奇世界!

Redis 哈希(Hash)是一种灵活且功能强大的数据结构&#xff0c;它可以存储多个字段和对应的值&#xff0c;适用于存储对象。了解 Redis 哈希的基本命令、示例和使用方法&#xff0c;以及常见的应用场景&#xff0c;将帮助您更好地利用 Redis 的强大功能。 Redis 哈希的基本命令…

AI辅助研发正在成为造福人类的新生科技力量

目录 1.AI用于药物研发 &#xff08;1&#xff09;药物靶点预测&#xff1a; &#xff08;2&#xff09;药物分子设计&#xff1a; &#xff08;3&#xff09;药物筛选&#xff1a; &#xff08;4&#xff09;药效和安全性预测&#xff1a; &#xff08;5&#xff09…

C#四部曲(知识补充)

Unity跨平台原理 .Net相关 只要编写的时候遵循.NET的这些规则&#xff0c;就能在.NET平台下通用 各种源码→根据.NET规范编写→(虚拟机)生成CIL中间码(保存在程序集中)→转成操作系统原代码 跨语言← 跨平台↓ Unity跨平台原理&#xff08;Mono&#xff09; c#脚本→MonoC#编…

CCCorelib 点云曲面特征(CloudCompare内置算法库)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 这里基于每个点的邻域协方差来获取点云中具有的曲面几何特征的点,计算方式如下图所示: 二、实现代码 // CloudCompare #include <CCCoreLib/PointCloudTpl.h> #include <CCCoreLib/

QT6.6下android编译及调用自定义so库方法

一.问题概述 最近需要把QT程序从5.12的桌面环境移植到QT6.6的android下,项目中有很多DLL库要重新编译为so文件,移植到android环境然后调用,中间有很多坑,虽然大体和桌面系统用法相同,但细节上还是有区别的,尤其是so库的调用方法上,过程中也是debug了两天才解决,如果你也…

husky 检查commit

1 . Package.json 安装以下插件 "commitlint/cli": "^17.4.4", "commitlint/config-conventional": "^17.4.4", "core-js": "^3.6.4", "custom-event-polyfill": "^1.0.7", "fetch-…

使用 PlayFab 服务器托管的 5 个步骤

在本教程中,你将了解如何使用 Unity、镜像网络和 PlayFab 服务器托管来构建在线多人游戏。玩家不能再位于同一个本地网络上。他们将连接到托管在云中的专用服务器,这使得他们即使相距很远也可以一起玩。 架构概述 下图显示了我们将构建的架构。 玩家将使用他们的客户端并连…

2024年G3锅炉水处理证模拟考试题库及G3锅炉水处理理论考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年G3锅炉水处理证模拟考试题库及G3锅炉水处理理论考试试题是由安全生产模拟考试一点通提供&#xff0c;G3锅炉水处理证模拟考试题库是根据G3锅炉水处理最新版教材&#xff0c;G3锅炉水处理大纲整理而成&#xff0…

读算法的陷阱:超级平台、算法垄断与场景欺骗笔记08_行为歧视

1. 常见的报价方式 1.1. 水滴定价&#xff08;Drip Pricing&#xff09; 1.1.1. 用一个较低的初始价格吸引消费者入局&#xff0c;之后再不断收取附加费用 1.2. 打折促销 1.2.1. 在一个远被高估的原价上制造折扣价格的魅力 1.2…