我的编程空间,编程开发者的网络收藏夹
学习永远不晚

简明字符编码

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

简明字符编码

原文来源 https://www.jmjc.tech/tutoria...

我们在显示屏上看的字母a、b、c...最终都会被转换成0/1序列, 因为计算机只能识别0和1。从数字到字母的转换都过程,计算机需要依赖于一个类似于字典的东西,它是权威标准的,每一台计算机都要按照它都规定,最早诞生的字典,名为ASCII


ASCII

一个字节(byte)是8位的二进制0000 0000,总共代表256种状态。最初的计算机只流行于英语国家,英文的字母大小写总共是52个,加上一些常用的符号,数字,这个字典的长度是128位,所以ASCII占用一个字节

【 ASCII对照表 】


后来,计算机发展到了世界各地,只表示英文和数字的ASCII已经满足不了各国的需求,大家纷纷发展出自己语言的字典,比如中国的GBK。 这样很有问题,夹杂着各种语言的文档,经常会被解析出来一大堆 乱码。为了统一,大家商议决定,制定一个通用的字典unicode


unicode

unicode是在ASCII的基础上扩展的,对原有ASCII字符完全兼容。长度上从原来的0000 0000,扩展到了0000 0000 0000 0000,占用2个字节,可以容纳65535个字符。

# ASCII 字母 A
0110 0001 # 十进制 = 97

# unicode 字母 A 
0000 0000 0110 0001 # 十进制 = 97 | ASCII字符就在前面补8位的0

UTF-8

unicode是一个字典,也叫字符集,是信源编码。而UTF-8是信道编码,我们数据在传输的时候,都会被解析成UTF-8。

UTF-8是在unicode的基础上,进行编码和解码,针对unicode传输实现的编码还有UTF-16 / UTF-32等...

UTF-8是变长的,不同的文字有不同的长度,英文字母一般是1 byte,汉字是3 byte。


Python 的字符编码

Python3之前的Python版本,使用的是ASCII编码,所以对中文的支持很头,现在已经原生的支持unicode

# 正 unicode
>>> ord('a')
97

# 反 unicode
>>> chr(97)
'a'

# 中文
>>> ord('哦')
21734

编码解码

 # 编码
>>> 'a'.encode('utf-8')
b'a'

>>> '哦'.encode('utf-8')
b'\xe5\x93\xa6'

# 解码
>>> b'\xe5\x93\xa6'.decode('utf-8')
'哦'

byte

二进制数据类型,1 byte是8位的二进制0000 0000。

>>> len('哦') # 1个字符
1

>>> len('哦'.encode('utf-8')) # 3个字节
3

# 以上是字节和字符的关系

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

简明字符编码

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

简明字符编码

原文来源 https://www.jmjc.tech/tutoria...我们在显示屏上看的字母a、b、c...最终都会被转换成0/1序列, 因为计算机只能识别0和1。从数字到字母的转换都过程,计算机需要依赖于一个类似于字典的东西,它是权威
2023-01-31

字符编码简介

ASCII  ASCII(American Standard Code for Information Interchange,美国信息交换标准代码),是一种单字节编码。计算机起源于美国,早期计算机中使用的只有英文,没有其他的语言,而单字节
2023-01-30

Java字符编码知识简介(zt)

新一篇: orcle ibatis 中文字符 问题1 基本信息
2023-06-03

C#字符集编码的使用及说明

这篇文章主要介绍了C#字符集编码的使用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-01-28

字符编码

计算机基础文本编辑器存取文件的原理1.打开编辑器就打开启动了一个进程,是在内存中,所以,用编码器编写的内容也都存放在内存中的,断电后数据丢失。2.要想永久保存,需要点击保存按钮:编辑器把内存的数据拴到硬盘上。3.早我们编写一个py文件,跟便
2023-01-31

python字符编码

近期接触到python的编码相关的东西,发现自己了解的不是太系统,故通过搜索资料做了一些总结。字符编码字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。我们知道,计算机内部,所有信息最终都是一个二进制值。每一个二进制位(bi
2023-01-31

Python3 字符编码

原文出处:http://www.cnblogs.com/284628487a/p/5584714.html编码字符串是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才
2023-01-31

python字符串编码

python默认编码  python 2.x默认的字符编码是ASCII,默认的文件编码也是ASCII。  python 3.x默认的字符编码是unicode,默认的文件编码是utf-8。 中文乱码问题  无论以什么编码在内存里显示字符,存到
2023-01-30

字符串与编码

在最新的Python 3版本中,字符串是以Unicode编码的,即Python的字符串支持多语言编码和解码  字符串在内存中以Unicode表示,在操作字符串时,经常需要str和bytes互相转换  字符串是可以直接在内存上进行处理的,但如
2023-01-31

Python13 字符转编码

编码:最开始电脑的字符集是ASCII,英文在ASCII中每个字母占1个字节,但ASCII不支持中文,所以后来出现了Unicode;Unicode中 英文和中文都占用两个字节,对于英文来说不合理,所以在Unicode的基础上出现了Unicod
2023-01-31

Python中的字符串与字符编码

Hello,这里是Token_w的博客,欢迎您的到来 今天文章讲解的是Python中的字符串与字符编码,其中有基础的理论知识讲解,也有实战中的应用讲解,希望对你有所帮助 整理不易,如对你有所帮助,希望能得到你的点赞、收藏支持。感谢
2023-08-30

python字符编码与转码

python 2.x 字符编码与转码打印系统默认编码格式import sysprint(sys.getdefaultencoding())UTF-8 转 gbk方式:utf-8--转成--unicode--转成--gbka = "你好"pr
2023-01-31

day08(字符编码,字符与字节,文件操

一,复习''' 类型转换 1.数字类型:int() | bool() | float() 2.str与int: int('10') | int('-10') | int('0') | float('-.5') | float('
2023-01-31

JS字符串转GBK编码超精简实现详解

JS中GBK编码转字符串是非常简单的,但反过来,字符串转GBK编码却没这么简单。接下来本文就将带大家一起康康JS如何实现字符串转GBK编码,需要的可以参考一下
2022-11-13

Python字符集和字符编码是什么

这篇文章主要介绍“Python字符集和字符编码是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python字符集和字符编码是什么”文章能帮助大家解决问题。首先计算机存储的基本单位是字节,由8个比
2023-06-30

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录