TextMate 似乎使用了我假设的内置 Python 版本(sys.path 不起作用)。您如何将其配置为使用 3.1?我已经安装了 3.1 包,我可以使用 IDLE 进行交互式会话,但我现在需要使用 TextMate。
谢谢
原文由 eozzy 发布,翻译遵循 CC BY-SA 4.0 许可协议
TextMate 似乎使用了我假设的内置 Python 版本(sys.path 不起作用)。您如何将其配置为使用 3.1?我已经安装了 3.1 包,我可以使用 IDLE 进行交互式会话,但我现在需要使用 TextMate。
谢谢
原文由 eozzy 发布,翻译遵循 CC BY-SA 4.0 许可协议
派对迟到了,抱歉!我认为您想使用 TextMate 的“内置”解释器运行脚本?我发现最简单的解决方案是添加一个 shebang,效果非常好;
#!/usr/bin/env python3
对于 python 3.1 或;
#!/usr/bin/env python
对于默认系统 python,尽管后者对于练习来说是多余的。
原文由 Simon Banyard 发布,翻译遵循 CC BY-SA 2.5 许可协议
4 回答4.4k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
3 回答3.9k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.5k 阅读✓ 已解决
1 回答3.8k 阅读✓ 已解决
TextMate 使用
TM_PYTHON
变量的值来查找 Python 解释器的路径。一个好的解决方案是利用 TextMate 在每个项目的基础上定义诸如TM_PYTHON
之类的变量的能力:打开一个新的或现有的 TextMate 项目(
File -> New Project
或File -> Open
)取消选择项目列表侧栏中的任何文件。
单击边栏中的
Get Info
( i ) 图标。出现Project Information
窗格。单击 + 添加新变量。
在 Variable 字段中输入 TM_PYTHON,并在 Value 字段中输入所需 python 的完整路径(例如
/usr/local/bin/python3.1
)。关闭信息窗口并保存项目(
File
->Save Project As
)。然后您可以根据需要将文件添加到项目中,它们将使用 TextMate Python 包的运行脚本命令在所选的 python 下运行。您可能想要保存一个
Python 3
项目,例如,用于在 Python 3 下运行临时脚本。对于更大的项目,无论如何您都需要为其创建一个单独的 TextMate 项目。要更改
TextMate
中全局使用的 Python 版本:从
TextMate
菜单栏,打开TextMate
->Preferences
单击
Advanced
窗格单击
Shell Variable
选项卡单击
+
添加一个新变量enter
TM_PYTHON
in theVariable
field and the full path to the python in theValue
field (perhaps/usr/local/bin/python3.1
)正如 Alex 指出的那样,您可能会通过全局更改 Python 版本来破坏其他 TextMate 功能,因此每个项目的更改可能是更好的解决方案。
更新(2010-10-31):
对于某些项目,还有另一种方法可能更容易使用。
TextMate
的 Python 包中的Run
命令似乎尊重正在运行的文件中的 shebang 行。因此,无需修改TM_PYTHON
,您可以通过包含如下第一行来指定要使用的解释器的路径:在许多情况下,您不希望 硬 连接绝对路径,而是通过普通 shell
PATH
环境变量来管理使用。传统上/usr/bin/env
用于该目的。但是,当在TextMate
下运行时,通常不会使用您的 shell 配置文件,因此对 PATH 的任何更改都不会显示在那里,包括可能/usr/local/bin
或/opt/local/bin
无论您在哪里所需的python3
命令位于。为了解决这个问题,您可以添加或修改全局PATH
shell 变量TextMate
->Preferences
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
。然后你可以像这样使用更通用的 shebang 行:(这一切似乎都适用于最新的 vanilla
TextMate
及其 Python 包:不保证早期版本或其他 Python 包。)