Python 的 ord() 和 chr()

您所在的位置:网站首页 丰田chr是什么缩写 Python 的 ord() 和 chr()

Python 的 ord() 和 chr()

2024-07-09 19:13| 来源: 网络整理| 查看: 265

本内容来自:https://gairuo.com

说明

《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。

本内容来自:https://gairuo.com

Python 的 ord() 是将单个字符转 Unicode 码点,chr() 将 Unicode 码点转为字符, 它们两个互为逆函数。Unicode 也是一种为字符提供唯一数字的编码技术。

介绍与对比

与 ascii() 相关的,Python 还有两个内置函数:

ord(c):给定一个表示一个 Unicode 字符的字符串,返回一个表示该字符的 Unicode 码点的整数。例如 ord('a') 返回整数 97, ord('€') (欧元符号)返回 8364 。 chr(i):返回表示 Unicode 码位为整数 i 的字符的字符串。例如,chr(97) 返回字符串 'a',chr(8364) 返回字符串 '€'。这是 ord() 的逆函数。实参的合法范围是 0 到 1,114,111(16 进制表示是 0x10FFFF)。如果 i 超过这个范围,会触发 ValueError 异常。

要注意的是:

ord(c):c 为一个字符串,返回一个整数,这个整数为 Unicode 码位编号 chr(i):i 一个整数(有上述范围限制),返回码位编号为这个整数的 Unicode 字符串

它们两个互为逆函数。

Unicode 也是一种为字符提供唯一数字的编码技术。虽然 ASCII 仅编码128个字符,但当前的 Unicode 有来自数百个文字符号系统的 100000 多个字符。

示例

以下是一些示例:

ord('a') # 97 ord('¥') # 人民币符号 # 165 ord('美国') # 多个字符 # TypeError: ord() expected a character, but string of length 2 found chr(97) # 'a' chr(165) # '¥' chr(1_114_112) # 大于 1_114_111 # ValueError: chr() arg not in range(0x110000)

以上。

名称

关于这两个方法的单词全写:

ord

ord(c) 中的 ord 代表 "ordinal"(序数)。可能 ord 最早的用法是在 Pascal 语言中,它返回其参数的序号值。对于字符,这被定义为 ASCII 码。在 Modula-2(一种通用的结构化过程式编程语言)中也使用了相同的约定。

后来,Python(以及 PHP、SQL 的一些方言等)遵循了这个惯例,只是现在他们更可能使用 Unicode 而不是ASCII。这个术语(和函数名)的起源很可能比 Pascal 更久远。

它是“序数” ordinal 的缩写。序数是计数的数字,即 1、2、3,ord() 将字符转换为其在字符集中的(可计数)位置。

chr

chr() 这是 “character” (字符)一词的缩写。

参考 https://docs.python.org/zh-cn/3/library/functions.html#ord https://docs.python.org/zh-cn/3/library/functions.html#chr https://stackoverflow.com/questions/50314440/what-does-the-name-of-the-ord-function-stand-for 相关内容 Python 将字符串中的字母替换为其后继字母 2022-01-06 14:20:15 bin() 转为二进制字符串 Python 内置函数 sorted() 返回已排序列表 >

更新时间:2021-11-11 17:39:50 标签:python



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3