python - 那些 python* 可执行文件是怎么回事?

标签 python version executable

虽然我使用的是安装了 MacPorts 的 Mac,但我想这个问题可以应用于其他平台。

当我在 $PATH 中列出所有带有“python”前缀的可执行文件时,我得到了一堆结果:

//64-bit Mac Mini @work/
$ IFS=:

//64-bit Mac Mini @work/
$ find $PATH -name python\*
/opt/local/bin/python3
/opt/local/bin/python3m-config
/opt/local/bin/python3.7-config
/opt/local/bin/python2.7-config
/opt/local/bin/python3.7m
/opt/local/bin/pythonw2.7
/opt/local/bin/python3.7m-config
/opt/local/bin/python3.7
/opt/local/bin/python3-config
/opt/local/bin/python2.7
/opt/local/bin/python3m
/usr/bin/python
/usr/bin/pythonw
/usr/bin/python2.7-config
/usr/bin/pythonw2.7
/usr/bin/python-config
/usr/bin/python2.7

我知道 python[23]* 是什么,但是 python3.7m、python3m、pythonw、pythonw2.7 和那些 python*-config 是做什么的?

更新

感谢指出可能重复的评论。然而,这并没有完全解决我的问题,因为它没有提到 python2.7 解释器上的“w”标志,也没有提到那些 *-config 程序的功能是什么。

最佳答案

existing question他的回答解决了我大部分的困惑。

后缀字母表示 CPython 实现的特定构建的“ABI 版本”,可以看一下 this GitHub commit

至于2.x版本中的'w'标志,在man page中都有解释:

pythonw -- run python script allowing GUI

...

Actually, since Python 2.5, the normal python also allows GUI access, so python and pythonw are now interchangeable.

也可以在 Bytes.com 上找到相关讨论

python*-config 程序用于构建使用 python 的程序,它有点像专门针对 python 的“pkg-config”应用程序。

关于python - 那些 python* 可执行文件是怎么回事?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57000585/

相关文章:

Java Stacktrace 错误 Unsupported major.minor version 51.0

java - 从 C# 编写的程序中获取数据到 Java 程序中

java - 按任意键继续不工作?

ruby - 使用文本 IO 双击可执行文件制作 ruby​​ 脚本?

python - 在 Pandas 数据框中计算点之间最短(欧几里得)距离的最快方法

python - Django 的后端处理

python - 从 Selenium IDE 将测试导出为 python

python - Keras 数据集的训练集和测试集具有不同的向量长度

php - 我在 wamp 中收到关于 PHP 路径的错误

python - Mac OS X 上用于 Python 3 的 Kivy