Sublime Text 3 配置python开发环境遇见的问题
2016-04-07 15:32
751 查看
安装的主要插件:
SublimeTmpl 提供了常用文件模板,新建文件时很有用。Anaconda 是一个终极 Python 插件。它为 ST3 增添了多项 IDE 类似的功能,例如:
Autocompletion 自动完成,该选项默认开启,同时提供多种配置选项
Goto Definitions 能够在你的整个工程中查找并且显示任意一个变量,函数,或者类的定义。
Find Usage 能够快速的查找某个变量,函数或者类在某个特定文件中的什么地方被使用了
Code linting 代码静态分析功能,包括格式等,检查使用支持 pep8 标准的 PyLint 或者 PyFlakes
SublimeLinter 会帮你查代码是否符合PEP8的要求。有问题有代码会出现白框,点击时底下的状态栏会提示出什么问题。
Python PEP8 Autoformat 使用它进行符合PEP8要求的格式化
SublimeREPL REPL就是read-evaluation-print-loop,(解释型语言编译运行的过程)。装了SublimeREPL插件后也支持了编辑器上直接的编译运行和交互
我配置过程中遇见的问题和解决方法:
Anaconda的问题
Anaconda默认配置和详细说明Anaconda配置文件在
Sublime > Preferences > Package Settings > Anaconda > Settings – User:
{ "pep8_ignore": [ "E501", ], "complete_parameters": true, "anaconda_linting_behaviour": "save-only",// always "anaconda_gutter_theme": "hard", "anaconda_linter_show_errors_on_save": true, "python_interpreter": "/Library/Frameworks/Python.framework/Versions/3.5/bin/python3", "anaconda_linting": true, }
a. 代码linting太严
例如:我逗号”,”后面没加空格,它就会用白框框这么提示我代码不规范它管的太严,所以我们可以在pep8_ignore里填入要忽视的错误码,所有错误码
E101 - Reindent all lines. E111 - Reindent all lines. E121 - Fix indentation to be a multiple of four. E122 - Add absent indentation for hanging indentation. E123 - Align closing bracket to match opening bracket. E124 - Align closing bracket to match visual indentation. E125 - Indent to distinguish line from next logical line. E126 - Fix over-indented hanging indentation. E127 - Fix visual indentation. E128 - Fix visual indentation. E129 - Indent to distinguish line from next logical line. E201 - Remove extraneous whitespace. E202 - Remove extraneous whitespace. E203 - Remove extraneous whitespace. E211 - Remove extraneous whitespace. E221 - Fix extraneous whitespace around keywords. E222 - Fix extraneous whitespace around keywords. E223 - Fix extraneous whitespace around keywords. E224 - Remove extraneous whitespace around operator. E225 - Fix missing whitespace around operator. E226 - Fix missing whitespace around operator. E227 - Fix missing whitespace around operator. E228 - Fix missing whitespace around operator. E231 - Add missing whitespace. E241 - Fix extraneous whitespace around keywords. E242 - Remove extraneous whitespace around operator. E251 - Remove whitespace around parameter ‘=’ sign. E261 - Fix spacing after comment hash. E262 - Fix spacing after comment hash. E271 - Fix extraneous whitespace around keywords. E272 - Fix extraneous whitespace around keywords. E273 - Fix extraneous whitespace around keywords. E274 - Fix extraneous whitespace around keywords. E301 - Add missing blank line. E302 - Add missing 2 blank lines. E303 - Remove extra blank lines. E304 - Remove blank line following function decorator. E401 - Put imports on separate lines. E501 - Try to make lines fit within –max-line-length characters. E502 - Remove extraneous escape of newline. E701 - Put colon-separated compound statement on separate lines. E702 - Put semicolon-separated compound statement on separate lines. E703 - Put semicolon-separated compound statement on separate lines. E711 - Fix comparison with None. E712 - Fix comparison with boolean. W191 - Reindent all lines. W291 - Remove trailing whitespace. W293 - Remove trailing whitespace on blank line. W391 - Remove trailing blank lines. E26 - Format block comments. W6 - Fix various deprecated code (via lib2to3). W602 - Fix deprecated form of raising exception.
或者我们可以关闭anaconda的代码检查”anaconda_linting”: false,
使用Python PEP8 Autoformat 格式化代码
b. anaconda 不能自动补全第三方库
原因是:Anaconda使用的Python版本不是我们系统安装的Python可通过一下进行配置,使anaconda使用我们电脑上的Python,那样安装在我们电脑上python的第三方库也就会自动导入了
官方配置传送门
如上,关键在”python_interpreter”中写入本机安装的python的完整路径,例如:/Library/Frameworks/Python.framework/Versions/3.5/bin/python3,
SublimeREPL的问题
使用SublimeREPL进行编译运行时,设置SublimeREPL的python为我们机器上的python,不然会出现和上面Anaconda的b一样的问题解决方法:从电脑目录里找到SublimeREPL/config/Python/Main.sublime-menu文件
例如:Packages/User/SublimeREPL/config/Python/Main.sublime-menu
在Main.sublime-menu文件里配置如下:
我最常用的是用python或者run current file,所以找到这两个,在他们的cmd下填入要关联的本机的python所在的完整目录
{"command": "repl_open", "caption": "Python", "id": "repl_python", "mnemonic": "P", "args": { "type": "subprocess", "encoding": "utf8", "cmd": ["/Library/Frameworks/Python.framework/Versions/3.5/bin/python3", "-i", "-u"], "cwd": "$file_path", "syntax": "Packages/Python/Python.tmLanguage", "external_id": "python", "extend_env": {"PYTHONIOENCODING": "utf-8"} } }, {"command": "repl_open", "caption": "Python - RUN current file", "id": "repl_python_run", "mnemonic": "R", "args": { "type": "subprocess", "encoding": "utf8", "cmd": ["/Library/Frameworks/Python.framework/Versions/3.5/bin/python3", "-u", "$file_basename"], "cwd": "$file_path", "syntax": "Packages/Python/Python.tmLanguage", "external_id": "python", "extend_env": {"PYTHONIOENCODING": "utf-8"} } },
that’s all ! thank you !
相关文章推荐
- Win7下Python2.7环境安装paramiko模块
- python 列表、元组、字典
- 初学python(对比java语言不同) 第三篇
- Python SMTP发送邮件 - 带附件
- 在ipython notebook 上测试 ImportError: No module named _caffe
- Python3.4 用 BeautifulSoup 爬虫 Navigable String类型转换
- python学习笔记(xlwt/xlrd下载安装)
- Python列表
- Python通用序列操作
- LeetCode Best Time to Buy and Sell Stock
- Python Paramiko模块安装和使用
- 按照需要分别率长宽比导出图片(python 3)
- Python补充05 字符串格式化 (%操作符)
- Python一日一练09----奇偶排序
- 用Python制作游戏外挂(上)
- 用Python实现QQ找茬游戏外挂工具
- Day5、Python
- Python常用模块
- python jinjia2模板使用
- python3学习笔记2--命令提示符运行.py 的脚本