在 Mac 上使用 Python

在运行 macOS 的 Mac 上的 Python 原则上与在其他 Unix 平台上的 Python 非常相似,但有一些额外的特性,如 IDE 和包管理器,值得指出。

5.1. 获取和安装 MacPython

macOS 曾经在 10.8 至 12.3 版中预装了 Python 2.7。 建议你从 Python 网站 (https://www.python.org) 安装最新版本的 Python 3。 那里也提供了当前 Python 的 "通用二进制" 编译版,它可以在使用新 Intel 和传统 PPC CPU 的 Mac 上原生运行。

你安装后得到的东西有:

  • 会有一个 Python 3.12 文件夹在你的 Applications 文件夹中。 在这里你可以找到 IDLE,它是作为官方 Python 发行版标准组成部分的开发环境;以及 PythonLauncher,它负责处理在 Finder 中双击 Python 脚本的操作。

  • 框架 /Library/Frameworks/Python.framework ,包括 Python 可执行文件和库。安装程序将此位置添加到 shell 路径。 要卸载 MacPython ,你可以简单地移除这三个项目。 Python 可执行文件的符号链接放在 /usr/local/bin/ 中。

Apple 提供的 Python 版本分别安装在 /System/Library/Frameworks/Python.framework/usr/bin/python 中。 你永远不应修改或删除这些内容,因为它们由 Apple 控制并由 Apple 或第三方软件使用。 请记住,如果你选择从 python.org 安装较新的 Python 版本,那么你的计算机上将安装两个不同但都有用的 Python ,因此你的路径和用法与你想要执行的操作一致非常重要。

IDLE 包含一个帮助菜单,允许你访问 Python 文档。 如果您是 Python 的新手,你应该开始阅读该文档中的教程介绍。

如果你熟悉其他 Unix 平台上的 Python ,那么你应该阅读有关从 Unix shell 运行 Python 脚本的部分。

5.1.1. 如何运行 Python 脚本

你在 macOS 上开始使用 Python 的最好方法是通过 IDLE 集成开发环境,参见章节 IDE 以及在IDE运行时使用帮助菜单。

如果你想从终端窗口命令行或 Finder 中运行 Python 脚本那么你首先需要用一个编辑器来创建你的脚本。 macOS 自带了一些标准的 Unix 命令行编辑器,vimemacs 就是其中的两个。 如果你想要一个更具 Mac 风格的编辑器,那么来自 Bare Bones Software 的 BBEditTextWrangler 是不错的选择 (参见 Bare Bones Software | BBEdit 14),还有 TextMate (参见 TextMate: Text editor for macOS)。 其他的编辑器包括 Gvim (Redirecting to https://macvim.org) 和 Aquamacs (The Emacs for the Mac · Aquamacs Emacs)。

要从终端窗口运行脚本,必须确保:file:/usr/local/bin 位于 shell 搜索路径中。

要从 Finder 运行你的脚本,你有两个选择:

  • 把脚本拖拽到 PythonLauncher

  • 选择 PythonLauncher 作为通过 finder Info 窗口打开脚本(或任何 .py 脚本)的默认应用程序,然后双击脚本。 PythonLauncher 有各种首选项来控制脚本的启动方式。 拖拽方式允许你为一次调用更改这些选项,或使用其"首选项"菜单全局更改内容。

5.1.2. 运行有图形界面的脚本

对于旧版本的 Python ,有一个需要注意的 macOS 特殊问题:与 Aqua 窗口管理器通信的程序(换句话说,任何有 GUI 的程序)需要以特殊的方式运行。使用 pythonw 而不是 python 来启动此类脚本。

对于 Python 3.9,你可以使用 python 或者 pythonw

5.1.3. 配置

macOS 上的 Python 遵循所有标准的 Unix 环境变量,例如 PYTHONPATH ,但是为从 Finder 启动的程序设置这些变量是不标准的,因为 Finder 在启动时不会读取你的 .profile.cshrc 。你需要创建一个文件 ~/.MacOSX/environment.plist 。详情请看苹果的技术文件QA1067。

更多关于在 MacPython 中安装 Python 包的信息,参阅 安装额外的 Python 包 部分。

5.2. IDE

MacPython 附带标准的 IDLE 开发环境。 有关使用 IDLE 的详细介绍,请访问 One Day of IDLE Toying

5.3. 安装额外的 Python 包

本小节已移至 Python Packaging User Guide

5.4. Mac 上的图形界面编程

使用 Python 在 Mac 上构建 GUI 应用程序有多种选择。

PyObjC 是一个 Python 到 Apple 的 Objective-C/Cocoa 框架的绑定,这是大多数现代 Mac 开发的基础。 有关 PyObjC 的信息,请访问 pyobjc · PyPI

标准的 Python GUI 工具包是 tkinter,基于跨平台的 Tk 工具包(https://www.tcl.tk)。 Apple 的 macOS 捆绑了 Aqua 原生版本的 Tk,其最新版本可以从 https://www.activestate.com 下载和安装;它也可以从源代码构建。

wxPython 是另一个流行的跨平台 GUI 工具包,可以在 macOS 上原生运行。软件包和文档可从 https://www.wxpython.org 获取。

PyQt 是另一个流行的跨平台 GUI 工具包,可以在 MacOS 上原生运行。更多信息可以在 Riverbank Computing | Introduction 找到。

5.5. 在 Mac 上分发 Python 应用程序

在 Mac 上部署独立 Python 应用程序的标准工具是 py2app 。关于安装和使用 py2app 的更多信息可以在 py2app · PyPI 找到。

5.6. 其他资源

MacPython 邮件列表是 Mac 上 Python 用户和开发人员的优秀支持资源:

Pythonmac-SIG - SIG on Python for the Apple Macintosh | Python.org

另一个有用的资源是 MacPython wiki :

MacPython - Python Wiki

相关推荐
凤枭香11 分钟前
Python OpenCV 傅里叶变换
开发语言·图像处理·python·opencv
测试杂货铺18 分钟前
外包干了2年,快要废了。。
自动化测试·软件测试·python·功能测试·测试工具·面试·职场和发展
艾派森22 分钟前
大数据分析案例-基于随机森林算法的智能手机价格预测模型
人工智能·python·随机森林·机器学习·数据挖掘
小码的头发丝、1 小时前
Django中ListView 和 DetailView类的区别
数据库·python·django
Chef_Chen2 小时前
从0开始机器学习--Day17--神经网络反向传播作业
python·神经网络·机器学习
千澜空2 小时前
celery在django项目中实现并发任务和定时任务
python·django·celery·定时任务·异步任务
斯凯利.瑞恩2 小时前
Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户附数据代码
python·决策树·随机森林
yannan201903132 小时前
【算法】(Python)动态规划
python·算法·动态规划
蒙娜丽宁3 小时前
《Python OpenCV从菜鸟到高手》——零基础进阶,开启图像处理与计算机视觉的大门!
python·opencv·计算机视觉
光芒再现dev3 小时前
已解决,部署GPTSoVITS报错‘AsyncRequest‘ object has no attribute ‘_json_response_data‘
运维·python·gpt·语言模型·自然语言处理