(我知道以前曾经问过这个问题的变体,但不是专门用Python 3+和Sublime Text 3,我尝试了解决方案,但没有一个有用。)
无论如何:我正在使用Python 3.5。我正试图在Sublime Text中使用第三方模块 - Scrapy。虽然该模块在IDLE中工作,但它在Sublime中不起作用。
我尝试重定向PYTHONPATH
,但仍然无法正常工作。我对Python的语法特定设置是:
{
"path": "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin",
"cmd": ["python", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"word_wrap": true,
"env": {
"PYTHONPATH": "/Library/Frameworks/Python.framework/Versions/3.5/bin"
}
答案 0 :(得分:0)
我遇到了这个。
在您的情况下,Sublime Text 3.x需要一个新的构建系统,该系统需要在新构建系统中定义的“路径”和“ cmd”才能正确识别两者和模块的位置您要使用哪个python命令字符串。
对于OSX 10.14.2上的Python 3.7,我使用了以下构建文件。我认为如果将3.5替换为3.7,则对3.5或任何3.x版本也可以使用。如果您安装了新版本的python,那么您还将需要一个全新的构建系统。
在工具下>构建系统>新的构建系统添加包含以下设置的文件并保存。
{
"path": "/Library/Frameworks/Python.framework/Versions/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin",
"cmd": ["/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
使用工具>构建方式切换到它。
答案 1 :(得分:-1)
您需要的是build system,而不是特定于语法的设置。选择 Tools -> Build System -> New Build System...
并将内容更改为以下内容:
{
"path": "/Library/Frameworks/Python.framework/Versions/3.5/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin",
"cmd": ["/Library/Frameworks/Python.framework/Versions/3.5/bin/python", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
将文件保存为Packages/User/Python3.5.sublime-build
,其中Packages
是打开的文件夹,方法是选择 Preferences -> Browse Packages...
(在编辑新的构建系统后点击保存时,它应该是自动指向Packages/User
)。
要使用构建系统,请选择 Tools -> Build System -> Python3.5
,然后按 Ctrl B (Windows,Linux)或当您的.py
文件聚焦时,⌘ B (OS X)。