刚开始学这两个函数的时候,看到书上说的是返回Unicode码,

但是自己去百度之后,发现很多人都说返回是ASCII


为什么会这样呢?

那么为了不误解 ,我们先介绍下Unicode码和ASCII码

ASCII
美国(国家)信息交换标准(代)码,一种使用7个或8个二进制位进行编码的方案,最多可以给256个字符
(包括字母、数字、标点符号、控制字符及其他符号)分配(或指定)数值

Unicode(万国码)
如果有一种编码,将世界上所有的符号都纳入其中,无论是英文、日文、还是中文等,大家都使用这个编码表,就不会出现编码不匹配现象。每个符号对应一个唯一的编码,乱码问题就不存在了。这就是Unicode编码

简单来说:Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。
区别:
ASCII:不支持中文,1个英文占1个字节
Unicode(万国码,支持所有国家的文字显示):支持中文,但是每个英文和中文都占2个字节

那么为什么会出现有的说ASCII有的说Unicode码的呢?

划重点

因为Python的诞生比Unicode标准发布的时间还要早,所以最早的Python只支持ASCII编码,普通的字符串’ABC’在Python内部都是ASCII编码的。,但是在Unicode标准发布以后 新版的Python,就开始逐渐基于Unicode码了

所以这是为什么会说ord()返回会出现不同的原因

这是Python2的时候介绍⬇

ord() 函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值

但是在Python3之后
unichr函数取消了 因为Python3中的chr()不仅仅支持Ascii的转换,直接支持了更为适用的Unicode转换

但是Unicode码的0-127和ASCII码还是一样的,所以不用担心ASCII不能用的问题

*127-255的扩展ASCII码和Unicode是不同的 这点要注意*

问题到这里就差不多了,还有一些更深入的我们就不说了,
总之时代在发展,Python也在不断改版,努力学习才不会落伍,

关于Python ord()和chr()返回ASCII码和Unicode码的看法相关推荐

  1. python ord()与chr()用法以及区别

    python ord()与chr()用法以及区别 原文:http://blog.csdn.net/yulock/article/details/52904035 ord()函数主要用来返回对应字符的a ...

  2. 浅谈ASCII码、unicode码等

    文章目录 背景 ASCII码 小结 背景 总是会混淆ASCII码和Unicode码,本文对此进行一个简要的分析 ASCII码 定义:ASCII ((American Standard Code for ...

  3. 汉字编码与编程相关问题总结:ASCII、机内码、区位码、国标码、Unicode码他们之间是如何转换的

    一.ASCII.机内码.区位码.国标码.Unicode码他们之间是如何转换的,方程式是什么 汉字系统中的过程包括区位码.国标码和机内码,其中的转换关系如下: 1.区位码(十进制)转换成区位码(十六进制 ...

  4. 汉字编码与编程相关问题总结:ASCII、机内码、区位码、国标码、Unicode码是如何转换的

    一.ASCII.机内码.区位码.国标码.Unicode码他们之间是如何转换的,方程式是什么 汉字系统中的过程包括区位码.国标码和机内码,其中的转换关系如下: 1.区位码(十进制)转换成区位码(十六进制 ...

  5. 字符,字节和编码, ASCII码, DBCS码,SBCS码 与Unicode码

    字符,字节和编码, ASCII码, DBCS码,SBCS码 与Unicode码 http://www.regexlab.com/zh/encoding.htm 1. 编码问题的由来,相关概念的理解 1 ...

  6. python返回unicode_Python 中通过 unicode 码返回单字符的函数是 ,返回单字符 unicode 码的函数是 。_学小易找答案...

    [单选题]哪一个命令能用来查找在文件TESTFILE中只包含四个字符的行?( ) [单选题]修改以太网卡mac地址的命令为( ). [单选题]Python 字符串支持切片操作,如有字符串 s &quo ...

  7. Java中的ASCII码与Unicode码

    先上代码 后续更新 1 public class Unicode { 2 public static void main(String[] args) { 3 char ch1 = 'c'; 4 ch ...

  8. 字符的编码表示——ASCII码、国标码、Unicode码

     ASCII码: 美国信息交换标准代码(American Standard Code for Information Interchange) 其中包括62个英文字母和阿拉伯数字,33个可打印字符,3 ...

  9. 字符与字符串的表示(ASCII字符,Unicode码,字符串)

    非数值数据,通常指的是字符.字符串.图形符号.汉字等数据,它们并不用来表示数值的大小,一般情况下也不对它们进行算术运算. 1. ASCII字符 由于计算机内部只能识别和处理二进制代码,所以字符必须按照 ...

最新文章

  1. java通过异常处理错误,java基础之通过错误处理异常
  2. MySQL之简单示例
  3. 阿里云文件存储极速型NAS产品介绍
  4. apple watch自身不会让你更健康,而这些会
  5. UI2Code智能生成Flutter代码--整体设计篇
  6. JAVA多线程和并发基础面试问答(转载)
  7. 程序员面试金典 - 面试题 04.04. 检查平衡性(二叉树高度)
  8. 大学计算机基础知识点图文,大学计算机基础知识点超详细总结
  9. Flink本地安装教程
  10. Dubbo 2.7.7 发布,FastJson 升级了!
  11. 值得推荐的C/C++框架和库(转)
  12. hdoj1003+codeup2086:Max Sum最大连续子序列和(dp基础题+dp入门-----分治/遍历求和/dp)
  13. win11安装更新错误0x800f081f怎么解决?
  14. CentOS7和Ubuntu18.10下运行Qt Creator出现cannot find -lGL的问题的解决方案
  15. java无响应_Java HttpClient请求无响应解决方案
  16. 给热心老哥搭个窝,2021年30分钟用Discourse搭建新一代BBS论坛站全攻略
  17. Stereogram(极射赤面)投影--主要用于中高纬和极区的天气图
  18. 收费邮箱品牌大全,一个足够!
  19. Ubuntu 安装matplotlib
  20. 数字信号处理matlab相关基础例题分析

热门文章

  1. python计算二维平面的曲线的曲率
  2. 自动化调参NNI学习(三):使用python启动NNI框架调整随机森林(RandomForest)模型
  3. dataframe 添加列表到一个单元格并解决报错ValueError: Must have equal len keys and value when setting with an...
  4. wordpress php 链接,WordPress中获取页面链接和标题的相关PHP函数用法解析
  5. ddr4服务器内存和普通内存_买主板送DDR4内存!微星日联合大促开幕
  6. 中科院信工所经验_保研经验分享:实力+经验+运气=保研成功
  7. 一些知名的J2me优秀开源UI项目
  8. c++--类的作用域
  9. 对于glut和freeglut的一点比较和在VS2013上的配置问题
  10. 20145236 《Java程序设计》 第6周学习总结