Python系统配置 tldr:如何在Mac上设置Python?在我开始破坏它之前,是否有大量毫无意义的复制?
我希望得到一些关于Mac上Python系统体系结构的指导(也许答案是操作系统不可知,但出于安全考虑,我假设不是) 我可以运行各种命令,这些命令似乎为我提供了多个Python二进制文件。事实上,可能还有更多,这正是我到目前为止遇到的Python系统配置 tldr:如何在Mac上设置Python?在我开始破坏它之前,是否有大量毫无意义的复制?,python,macos,operating-system,config,Python,Macos,Operating System,Config,我希望得到一些关于Mac上Python系统体系结构的指导(也许答案是操作系统不可知,但出于安全考虑,我假设不是) 我可以运行各种命令,这些命令似乎为我提供了多个Python二进制文件。事实上,可能还有更多,这正是我到目前为止遇到的 ls/usr/local/bin/| grep'python\| pyd' pydoc pydoc2 pydoc2.7 python python-32 python配置 蟒蛇2 蟒蛇2-32 python2配置 蟒蛇2.7 蟒蛇2.7-32 python2.7-co
ls/usr/local/bin/| grep'python\| pyd'
pydoc
pydoc2
pydoc2.7
python
python-32
python配置
蟒蛇2
蟒蛇2-32
python2配置
蟒蛇2.7
蟒蛇2.7-32
python2.7-config
蟒蛇
蟒蛇-32
蟒蛇2
蟒蛇2-32
蟒蛇2.7
蟒蛇2.7-32
ls/usr/bin | grep'python\| pyd'
pydoc
pydoc2.6
pydoc2.7
python
python配置
蟒蛇2.6
python2.6-config
蟒蛇2.7
python2.7-config
蟒蛇
蟒蛇2.6
pythonw2.7
ls/Library/Frameworks/Python.framework/Versions/
2.7当前版本
ls/System/Library/Frameworks/Python.framework/Versions/
2.3 2.5 2.6 2.7当前版本
执行.py
时运行哪一个;当我运行时,我会返回哪个python
/Library/Frameworks/Python.framework/Versions/2.7/bin/Python
当我使用REPL时,这似乎是一致的。与此安装相关的站点软件包
可用(我没有修补其他站点软件包LOC)
我还没有在我的Mac上对python环境进行任何认真的修改,所以我假设这是提供给用户的开箱即用的东西。如果有人知道所有这些二进制文件是如何组合在一起的,以及它们为什么都存在,请告诉我。如果答案是RTM,请简单地给我指出一个页面,因为这是不够的
谢谢你让我更聪明
规格:
Mac OS:10.12.5免责声明:我对现代Mac OS知之甚少
/System/Library/Frameworks/Python.framework/Versions/2.*/
下的所有文件似乎都是相同的文件。也就是说,下面显示了3个相同的校验和:
md5 /System/Library/Frameworks/Python.framework/Versions/2.{3,5,6}/bin/python
我想它适用于假定有特定早期Python版本可用的macOS应用程序。它们都有相同的2.6.9版本,这是2.6的最新版本。2.x/lib
都包含python2.6
子目录和.py*
文件,这些文件看起来也相同:
md5 /System/Library/Frameworks/Python.framework/Versions/2.{3,5,6}/lib/python2.6/threading.pyc
我不知道是否所有这些文件都是指向相同字节的硬链接,但似乎有可能。所有口译员似乎都一样:
$ find /System/Library/Frameworks/Python.framework/Versions/2.{3,5,6}/bin/* \
-samefile /System/Library/Frameworks/Python.framework/Versions/2.6/bin/python
/System/Library/Frameworks/Python.framework/Versions/2.3/bin/python2.6
/System/Library/Frameworks/Python.framework/Versions/2.5/bin/python2.6
/System/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6
Python2.7是唯一维护的2.x版本,因此它是独立的,可能会收到更新。免责声明:我对现代macOS知之甚少
/System/Library/Frameworks/Python.framework/Versions/2.*/
下的所有文件似乎都是相同的文件。也就是说,下面显示了3个相同的校验和:
md5 /System/Library/Frameworks/Python.framework/Versions/2.{3,5,6}/bin/python
我想它适用于假定有特定早期Python版本可用的macOS应用程序。它们都有相同的2.6.9版本,这是2.6的最新版本。2.x/lib
都包含python2.6
子目录和.py*
文件,这些文件看起来也相同:
md5 /System/Library/Frameworks/Python.framework/Versions/2.{3,5,6}/lib/python2.6/threading.pyc
我不知道是否所有这些文件都是指向相同字节的硬链接,但似乎有可能。所有口译员似乎都一样:
$ find /System/Library/Frameworks/Python.framework/Versions/2.{3,5,6}/bin/* \
-samefile /System/Library/Frameworks/Python.framework/Versions/2.6/bin/python
/System/Library/Frameworks/Python.framework/Versions/2.3/bin/python2.6
/System/Library/Frameworks/Python.framework/Versions/2.5/bin/python2.6
/System/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6
Python 2.7是唯一维护的2.x版本,因此它是独立的,可能会收到更新。要回答您关于为什么Python有各种不同的可执行文件的更广泛问题
是基本的命令行界面python可执行文件python
用于运行“无头”Python程序,而不提供终端输出。这种独特的可执行文件在基于GUI的Python程序的Windows上是必需的,在这些程序中不应打开控制台窗口,因此得名pythonw
脚本的存在只是为了向试图根据特定python二进制文件进行编译或链接到特定python二进制文件的程序提供配置信息,例如在创建python扩展模块时(我相信是在OSX上的(.pyd文件))python-config
从Python脚本文件中提取文档信息,例如从与特定类和函数关联的docstring中提取文档信息pydoc
python
与pythonw
的区别:
除此之外,您还有一些专门标记为
python-32
等的版本。这些版本将是32位版本,而您的系统上的其他版本可能是64位版本。有时,您可能希望使用32位版本的Python,因为您希望链接到其他32位代码,包括Python扩展或其他共享库。要回答您更广泛的问题,即为什么Python有各种不同的可执行文件
是基本的命令行界面python可执行文件python
用于运行“无头”Python程序,而不提供终端输出。这种独特的可执行文件在基于GUI的Python程序的Windows上是必需的,在这些程序中不应打开控制台窗口,因此得名pythonw
脚本的存在只是为了向试图根据特定python二进制文件进行编译或链接到特定python二进制文件的程序提供配置信息,例如在创建python扩展模块时(我相信是在OSX上的(.pyd文件))python-config
从Python脚本文件中提取文档信息,例如从与特定类和函数关联的docstring中提取文档信息pydoc
python
与pythonw
的区别:
除此之外,您还有一些专门标记为python-32
等的版本。这些版本将是32位版本,而您的系统上的其他版本可能是64位版本。有时,您可能希望使用32位版本的Python,因为您希望链接