在 Sublime Text2 中设置 Python 版本时遇到问题

Posted

技术标签:

【中文标题】在 Sublime Text2 中设置 Python 版本时遇到问题【英文标题】:Trouble setting Python version in Sublime Text2 【发布时间】:2012-09-02 17:57:08 【问题描述】:

我在 Sublime Text2 中设置构建环境时遇到问题。 我正在使用 Macports 进行 Python 和软件包安装。

我的 python.sublime-build 文件如下所示:


    "cmd": ["python", "-u", "$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python"

我认为(通过搜索)我需要修改“cmd”行以指向 Macports 版本。有人成功完成了吗?

从终端,一切构建/运行正常,只有 Sublime Text2 的构建仍在获取系统版本。

附加信息:

which python
/opt/local/bin/python

感谢您的帮助。

【问题讨论】:

为什么不把python改成/opt/local/bin/python 【参考方案1】:

您的 Sublime Text 2 环境与您的 shell 环境不同; $PATH 变量可能没有指向相同的目录并且选择了错误的可执行文件。

您有多种解决方法:

    设置包含/opt/local/bin"path" 选项需要为您的python 可执行文件使用绝对路径,因为Sublime Text 2 不共享您的shell 使用的相同环境PATH 变量。检查echo $PATH 并将其用作模板:

    
        "cmd": ["python", "-u", "$file"],
        "path": "/opt/local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/Current/bin:/Users/yourloginname/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin",
        "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
        "selector": "source.python"
    
    

    这将使用/bin/bash 运行命令,我认为它与您的终端具有相同的$PATH 设置。

    通过设置"shell" 选项通过shell 运行命令:

    
        "cmd": ["python", "-u", "$file"],
        "shell": true,
        "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
        "selector": "source.python"
    
    

    使用 python 命令的完整路径:

    
        "cmd": ["/opt/local/bin/python", "-u", "$file"],
        "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
        "selector": "source.python"
    
    

【讨论】:

示例 2 不会向 sublime 控制台输出打印消息或任何其他消息。

以上是关于在 Sublime Text2 中设置 Python 版本时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Sublime 3 中设置 scss 语法?

使用 NVM 在 Sublime 中设置路径

在sublime-text中设置浏览器预览

sublime中设置scala编译运行

Mac中设置Sublime快速在终端中使用命令打开项目

sublime text3中设置Emmet输入标签自动闭合