Python ABI 标签中的“m”是啥意思?

Posted

技术标签:

【中文标题】Python ABI 标签中的“m”是啥意思?【英文标题】:What does the 'm' in a Python ABI tag mean?Python ABI 标签中的“m”是什么意思? 【发布时间】:2019-01-08 17:42:07 【问题描述】:

PEP 425 解释了内置 python 发行版的兼容性标记格式,但没有详细解释 ABI 标记。

ABI 标记可以以字母“d”、“m”和“u”的组合结尾。例如,PEP 中解释了 'd' 表示带有调试功能的 ABI,this answer 解释说 'u' 表示使用--enable-unicode=ucs4 编译的解释器,但我找不到 ' 的含义m' 任何地方。

【问题讨论】:

【参考方案1】:

根据PEP 3149,m 表示有问题的 ABI 正在使用the pymalloc allocator:

Python 实现可以酌情在文件名标签中包含额外的标志。例如,在 POSIX 系统上,这些标志也会影响文件名:

--with-pydebug(标志:d--with-pymalloc(标志:m--with-wide-unicode(标志:u

【讨论】:

值得注意的是,Python 3.8 取消了m 标志。 @rdb:类似地,从 3.3 开始(实现 PEP 393),“宽 unicode”不再是一个东西(它们从每个字符硬编码两个或四个字节,确定 Python 是构建为灵活的表示,每个字符使用 1、2 或 4 个字节,具体取决于最大序数,因此任何系统都可以表示任何 Unicode 字符,而不必总是每个字符使用四个字节)。

以上是关于Python ABI 标签中的“m”是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

HTML中的span标签到底是啥意思,有啥具体的作用

Internet 延迟:Chrome Developer Tools Network 标签中的 PENDING 和 FROM CACHE 是啥意思

css 中的class是啥意思!

css中的span.active是啥意思

SSE 指令中的 UnsignedSaturate 是啥意思?

当我创建一个新项目时,Xcode 4 的 Project Navigator 中的“M”和“A”图标是啥意思?