编码发展史

》介绍

在计算机历史的早期,美国为代表的英语系国家主导了整个计算机行业,26个英文字母组成了多样的英语单词、语句、文章。因此,最早的字符编码规范是ASCII码,一种8位即1个字节的编码规范,它可以涵盖整个英语系的编码需要。

编码是什么?编码就是把一个字符用一个二进制来表示。我们都知道,所有的东西,不管是英文、中文还是符号等等,最终存储在磁盘上都是01010101这类东西。在计算机内部,读取和存储数据归根结底,处理的都是0和1组成的比特流。问题来了,人类看不懂这些比特流,如何让这些010101对人类变得可读呢?于是出现了字符编码,它是个翻译机,在计算机内部某个地方,透明的帮我们将比特流翻译成人类可以直接理解的文字。对于一般用户,不需要知道这个过程是什么原理,是怎么执行的。但是对于程序员却是个必须搞清楚的问题。

以ASCII编码为例,它规定1个字节8个比特位代表1个字符的编码,也就是“00000000”这么宽,一个一个字节的解读。例如:01000001表示大写字母A,有时我们会“偷懒"的用65这个十进制来表示A在ASCII中的编码。8个比特位,可以没有重复的最多表示2的8次方(255)个字符。

后来,计算机得到普及,中文、日文、韩文等等国家的文字需要在计算机内表示,ASCII的255位远远不够,于是标准组织制定出了叫做UNICODE的万国码,它规定任何一个字符(不管哪国的)至少以2个字节表示,可以更多。其中,英文字母就是用2个字节,而汉字是3个字节。这个编码虽然很好,满足了所有人的要求,但是它不兼容ASCII,同时还占用较多的空间和内存。因为,在计算机世界更多的字符是英文字母,明明可以1个字节就能够表示,非要用2个。

于是UTF-8编码应运而生,它规定英文字母系列用1个字节表示,汉字用3个字节表示等等。因此,它兼容ASCII,可以解码早期的文档。UTF-8很快就得到了广泛的应用。

在编码的发展历程中,我国还创造了自己的编码方式,例如GBK,GB2312,BIG5。他们只局限于在国内使用,不被国外认可。在GBK编码中,中文汉字占2个字节。

》简单理解

对于当前的utf8编码而言

一个中文字符,会占三个字节
一个英文字符,会占一个字节

一个字节由八个位组成
每一个位由0或1组成

视频,图片等媒体资源存在硬盘上,以字节形态保存的
所以打开与保存时要以字节形态保存

字节的标记

b

是字节的标记

字符串与字节的定义与转换

  • 定义字符串
  • 定义字节
  • 字节转字符串
  • 字符串转字节

python-字符串与字节-0222相关推荐

  1. Python字符串与字节串的相互转换

    Python字符串与字节串的相互转换 字符串转字节串 字节串转字符串 在使用Python做网络编程时,难免会遇到字节串与字符串相互转换,在此记录下几种相互转换的方法: 字符串转字节串 方法一: 方法二 ...

  2. python字符串和字节串有什么区别_对于Python中的字节串bytes和字符串以及转义字符的新的认识...

    事情的起因是之前同学叫我帮他用Python修改一个压缩包的二进制内容用来做fuzz,根据他的要求,把压缩包test.rar以十六进制的方式打开,每次修改其中一个十六进制字符串并保存为一个新的rar用来 ...

  3. python字符串有多少字节

    是否有一些函数可以告诉我字符串在内存中占用多少字节? 我需要设置套接字缓冲区的大小,以便一次传输整个字符串. 解决方案 import sys sys.getsizeof(s)# getsizeof(o ...

  4. python字符串和字节串有什么区别_python – 字符串和字节字符串之间的区别是什么?...

    在Python 2中,str和字节是相同的类型: >>> bytes is str True 在Python 3中,str类型是Python 2的unicode类型,它是所有字符串的 ...

  5. python字符串转换字节_python 字节与字符串转换

    1.如果没有设置字符串编码格式,那么将采用系统默认编码格式 name = 'laogaoyang' # 采用系统默认编码格式 nameBytes = name.encode('utf-8') # 先将 ...

  6. python 字符串转字节数组

    场景: java加解密和python加解密互转的时候,因一些非显示字符无法确认两者是否一致,故需要打出他们的十六进制字节数组进行比较 1.python代码实现 str='123';print str. ...

  7. python怎么把列表转换成字符串_如何将字节列表(unicode)转换为Python字符串?

    将字节序列转换为Unicode字符串是通过在该str(在Python 2.x中)或字节(Python 3.x)对象上调用decode()方法来完成的. 如果你实际上有一个字节列表,那么,为了获得这个对 ...

  8. 微课|玩转Python轻松过二级(2.1.3节):字符串与字节串简介

    适用教材: 董付国.<玩转Python轻松过二级>.清华大学出版社,2018. 第2章  运算符.表达式与内置对象 2.1.3  字符串与字节串 图书购买链接 京东:https://ite ...

  9. [转载] python 字符串转换long_python整数、字符串、字节串相互转换

    参考链接: Python字符串string的encode python的数据转换很灵活,所以用日志记录下他们的用法. 概览 数字 字符串 字节码 函数 功能 记忆口诀 备注 chr 数字转成对应的as ...

  10. python 字节字符串_Python字符串转换为字节,字节转换为字符串

    python 字节字符串 Python字符串到字节 (Python String to bytes) Python String to bytes conversion can be done in ...

最新文章

  1. BestCoder冠军赛 - 1005 Game 【DP】
  2. Vue Router路由嵌套
  3. 如何利用远程桌面连接CentOS的Desktop版本
  4. 不加样本就能做数据增强?还能提效?
  5. 【机器学习算法专题(蓄力计划)】九、机器学习中数据的假设检验
  6. AI 引领产业变革:相关岗位起薪33w
  7. 如何更改Docker默认的images存储位置
  8. ecs使用脚本安装oracle
  9. 简述container与container-fluid的区别
  10. HDU-神、上帝以及老天爷
  11. 当代年轻人怪现象:体检前万分紧张,体检后熬夜如常
  12. oracle10g 安装手册 linux,oracle10g在x86linux上的安装步骤
  13. Unity VR开发出语音识别功能
  14. C语言内联函数的作用
  15. 药店零售管理php系统,医药POS零售管理系统
  16. mysql临时表删除_MySQL如何创建和删除临时表
  17. big O notation - 大 O 表示法
  18. 富士康年轻工人现状调查:厌倦并依赖着-转自鲜果网
  19. 一次旅行:汕尾-汕头-梅州
  20. gtk 程序设计(c语言版) pdf,GTK+程序设计入门

热门文章

  1. java excel_java生成excel并下载功能
  2. 纯CSS自定义button按钮的点击特效
  3. 某易游戏经典吃豆豆动画404页面源码
  4. 按用户设置计算机权限,巧妙设置用户权限 管理学生机房计算机
  5. cad转shp格式带属性_Excel、Word、PPT、CAD办公格式怎么转?方法汇总,可批量
  6. python自定义修饰器_Python概述
  7. 微信可以远程控制电脑吗_上车| 手机远程控制手机,还可以控制电脑
  8. 1b8c语言,C语言 - 王朝网络 - wangchao.net.cn
  9. WinSCP断线,WinSCP总是断线,断线重连过程又需要卡很长时间解决办法
  10. 学物理好还是学计算机好,高考物理好适合学什么专业 物理好大学怎么选专业...