使用sublime实现python代码补全
- 前言
- 安装python3和sublime3
- 安装Anaconda
- 安装Package Control
- 安装Anaconda
- 配置Anaconda
- 个性化
前言
最近一段时间一直都在学习python,很长一段时间内没有找到和是的IDE工具,Pycharm的话,对我来说稍微有点重量级了,因为平常其实是不怎么敲代码的,一般也就写点脚本,或者实现下自己的算法。综合考虑之下,发现使用sublime是一个非常棒的选择,sublime可以成为一个轻量级的IDE。下文的配置和步骤主要实现了额两个功能。
实现python代码的自动补全功能。
能够正常的运行python代码
安装python3和sublime3
首先,你需要安装上述的工具。
sublime3
python3更是可以直接在360软件管家里面安装。
以上两个软件安装的时候,注意避免安装到中文路径中去,不然会出现各种报错。
还有一点,就是安装python3的时候,注意勾选add path,这样就不用自己来回改路径了。
安装Anaconda
Sublime Text是一个非常好用,并且功能十分强大(界面十分漂亮)的文本/代码编辑器,凭借其自身独特的自动补全功能,其实已经可以完成相当部分的代码自动完成功能了。最近在学习Caffe,经常使用Python来做预处理,经常要使用各种陌生的module或者是函数,这时候就非常怀念IDE(比如VS、IDEA)里面各种强大的自动补全功能了。
其实关于自动完成功能,PyCharm是可以胜任的,但是我的Python经常只是用来写些小的脚本,实在是不想再安装庞大臃肿的IDE。而且我也不想舍弃sublime的码代码的流畅手感,因此就搜寻了下如何能在Sublime下完成自动补全的功能。
Sublime这么流行,插件这么多,答案当然是有的。那就是Anaconda。
一开始看到这个名字我老以为是在讲Python的发行版Anaconda,其实并不是。这里说的Anaconda是Sublime的一个插件,提供关于Python代码编辑的非常强大的功能。
Anaconda官网地址是http://damnwidget.github.io/anaconda/,官网上也有详尽的安装方法,和配置说明。
下面是Anaconda的安装方法,本文方法只在Sublime Text 3上尝试过,
安装Package Control
首先确定自己的Sublime Text 已经安装了Package Control,这是一个Sublime的插件管理软件,但并不是Sublime自带的东西。
安装的方法如下:
使用快捷键ctrl+`打开命令行,或者在view中选择show console,然后输入:
import urllib.request,os; pf = ‘Package Control.sublime-package’; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), ‘wb’).write(urllib.request.urlopen( ‘http://sublime.wbond.net/’ + pf.replace(‘ ‘,’%20’)).read())
输入完敲回车,然后在菜单栏里面的Preferences中看是否能找到Package Control,找不到可以试着关掉重开一下Sublime Text。
安装Anaconda
使用快捷键ctrl+shift+p打开命令面板,输入install,面板上第一项应该会出现Package Control: Install Package,回车确定
然后稍微等待片刻,左下角有状态显示,此时正在读取Package列表。等Package列表出现之后,输入anaconda,选中备选项中的第一个
然后再稍等片刻。安装完成后,在Preferences\Package Settings中会出现Anaconda的选项卡,证明Anaconda包已经下载安装成功。
配置Anaconda
要想正常使用Anaconda,必须要设置你自己Python.exe所在路径,这也是最关键的一步。
如上图所示,打开Settings – Default,然后ctrl+f搜索python_interpreter,找到没有注释的一行,大约在95行左右:
将默认路径修改为你自己python.exe所在的路径,切记是python.exe的路径,而不是python.exe所在文件夹的路径.
然后保存,重开Sublime,下来便可以编辑Python文件感受一下不输于PyCharm的自动完成功能了。
个性化
默认的Anaconda设置可能并非我们需要的,比如自动完成的力度,以及想关闭Anaconda的一些自带的我们不需要的功能。
下面是我自己的配置文件,我仅对我自己所修改的配置做解释,更详细的解释Settings – Default中都有。
个性化的修改推荐在Settings -User中进行,这样子也清楚自己都修改了哪些配置,也方便重新安装环境的时候保存迁移配置。
我自己的配置如下:
<div class="crayon-info" style="min-height: 22.4px !important; line-height: 22.4px !important;"></div><div class="crayon-plain-wrap"><textarea class="crayon-plain print-no" data-settings="dblclick" readonly="" style="-moz-tab-size: 4; font-size: 16px !important; line-height: 18px !important; z-index: 0; opacity: 0; overflow: hidden;" wrap="soft">{
"python_interpreter": "D:/MyApps/Anaconda2/python.exe",
"suppress_word_completions": true,
"suppress_explicit_completions": true,
"complete_parameters": false,
"anaconda_linter_phantoms": true,
"pyflakes_explicit_ignore":
[// "Redefined","UnusedImport"// "UndefinedName",// "UndefinedLocal",// "UnusedVariable,",// "UndefinedExport",// "DuplicateArgument",// "RedefinedWhileUnused"
],
"anaconda_linting_behaviour": "save-only",
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
{
“python_interpreter”: “D:/MyApps/Anaconda2/python.exe”,
“suppress_word_completions”: true,
“suppress_explicit_completions”: true,
“complete_parameters”: false,
“anaconda_linter_phantoms”: true,
“pyflakes_explicit_ignore”:
[
// “Redefined”,
“UnusedImport”
// “UndefinedName”,
// “UndefinedLocal”,
// “UnusedVariable,”,
// “UndefinedExport”,
// “DuplicateArgument”,
// “RedefinedWhileUnused”
],
“anaconda_linting_behaviour”: “save-only”,
}
|
其中解释如下:
- python_interprete:这个就是上一步修改的python.exe路径,这里其实不加也可以
- suppress_word_completions:禁用掉Sublime Text原生的自动补全,默认是false。这个推荐设为true,否则会同时出现Anaconda和sublime原生的自动补全单词,自动补全列表就变得杂乱了
- suppress_explicit_completions:这个和上面是一个意思,也是默认false。两个设为一样的就好了
- complete_parameters:自动填充函数参数,默认是false。这个设为true,在打函数名的时候,如果选择自动完成列表中的选项,则会根据调用函数的定义,自动填充函数必须的参数。这个我一开始是用true的,后来发现在写参数的时候就不能用tab来选中自动补全选项,tab键变成了切换光标位置到下一个参数了,我觉得不是很习惯就又设为了false。
- anaconda_linter_phantoms:Anaconda有一个很酷炫的功能叫做linter,就是说可以识别代码中的语法错误,代码建议,格式建议等。而在Sublime Text 3 build 3124中加入了一个叫做Phantoms的API,这个API允许插件在编辑界面插入HTML注释。anaconda_linter_phantoms就是将刚才的语法错误等信息直接通过Phantoms的形式显示在编辑器中,不用再查看error list来查看了。显示效果如下:
这个功能好不好用智者见智仁者见仁吧,因为除了Error来说,警告和建议因为是参考PEP 8(默认开启)和PEP257(默认没有开启)标准来进行的,默认开启的PEP8是代码风格标准,所以动不动就会有警告,用起来难免有些烦,因此此功能最好可以和下面两个选项一起使用。 - pyflakes_explicit_ignore:这个告诉PyFlakes要忽视哪些警告。PyFlakes是一个代码检查的插件,Anaconda已经包含进去了,其默认也是采用PyFlakes来进行代码语法检查的。
我这里将UnusedImport取消注释掉了,因为我不想让Anaconda警告我哪些模块没有使用 - anaconda_linting_behaviour:由于开启了anaconda_linter_phantoms,所以每写一下代码,系统都会自动进行检查,并且显示出来提示框,这是非常烦的,我们不想让它每时每刻都检查。因此将这个选项设置为save-only,就是只有在保存的时候进行检查,另外还有一个选项是可以打开和保存的时候进行检查,我的想法是经常也要打开别人的python代码,别人可不一定按照PEP8来写,因此打开的话恐怕就是一大堆提示框,因此只选择了save-only。
我后面的三个设置,如果不准备按照PEP8的标准来写代码的话完全可以选择禁止掉PEP8,这个是选项就是”pep8″,直接改为false就好了,或者说你只是想禁用掉PEP8中的某一条规范,可以在”pep8_ignore”中添加要忽略的规范号,就比如上图中的E225。
这样基本上就完成了Anaconda的自定义工作了(至少是我自己的),更详细的选项配置可以参考官网的Pwerful IDE那一节,讲的很细致。
#
使用sublime实现python代码补全相关推荐
- [emacs] Python代码补全的各种方法介绍以及对比
Emacs的代码补全主要有以下几种选择: py-complete.el (只能用于python-mode.el) python-mode自带的pycomplete(包含一个pycomplete.el和 ...
- 牛逼的python代码_牛逼了!Python代码补全利器,提高效率告别996!
给大家介绍一款专门针对Python的代码自动补全利器: Kite,效果绝佳.它的使用条件很简单,支持多种IDE和操作系统,并且免费使用.支持Windows.Mac.Linux 支持Atom.PyCha ...
- 牛逼了!Python代码补全利器,提高效率告别996!
点击上方"Python数据科学",星标公众号 重磅干货,第一时间送达 Kite is a plugin for your IDE that uses machine learnin ...
- sublime配置python编译环境及代码补全功能
首先说明一下,具体的编译运行环境还是要在Tool->Build System里边选的,安装anaconda插件是为了解决代码补全问题,因此如果你有多个conda环境(亦即你有多个python.e ...
- python自动补全库_叼炸天的库! 自动补全 Python 代码,能节省 60% 敲码时间
近日,Reddit 上的一篇帖子引起了网友的热议.帖子作者「mlvpj」称: 「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全.」 根据介绍,该项目基于 LSTM 模型,训 ...
- python自动补全库_这个库厉害了,自动补全Python代码,节省50%敲码时间
近日,Reddit 上的一篇帖子引起了网友的热议.帖子作者「mlvpj」称: 「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全.」 根据介绍,该项目基于 LSTM 模型,训 ...
- 正在启动python的代码补全客户端_Python交互模式下代码自动补全
这个功能是以lib的形式提供的,配置写到home下的.pythonrc文件中, 并设置好环境变量让python启动时执行初始化: # ~/.pythonrc # enable syntax compl ...
- notepad++ python指定anaconda环境以及代码补全设置
1.前言 notepad++非常轻便,才4M,今天来配配python环境试试水,下面的方法二可以着重看一下,这是对anaconda配置专门写的,现有博客看了很多,感觉写的有些问题. 2.下载注意 官网 ...
- 代码补全_AI加持,Kite增加智能代码补全功能:减少一半操作,实时补全
代码补全工具 Kite 近日更新了最新的版本,增加了名为「Intelligent Snippets」的新功能.这一功能可以帮助开发者更为智能和高效的补全 Python 代码中的函数命令了. 机器之心报 ...
- python安装插件报错原因_Sublime Text3 python自动补全问题——Sublime Text3安装Anaconda插件...
学习python的时候 在编辑器的选择上会有很多选择,我最终还是选择了sublime text3. 相对于其他编辑器,sublime text有以下特性: 插件多,类似GoSublime,Emmet信 ...
最新文章
- Django web : CSRF verification failed. Request aborted.
- centos7 nginx安装_手把手教你PHP(一) Centos7上的LEMP配置
- 设置VS2010中使用IntelliTrace来进行调试
- 使用vue组件搭建网页应用
- vvv在线文档导出工具_一款真正实时的在线文档协作编辑工具,多人可同时对一份文件修改...
- Stringbuffer的线程安全是怎么实现的
- Python 一个无限 重复生成器的实现 和一个简洁的 quicksort
- Linux下rpm安装MySQL及配置
- 基于PCA降维实现人脸识别
- SSIS数据转换器及字符转换器使用
- BT601/BT709/BT2020 YUV2RGB RGB2YUV 公式
- 看懂Oracle执行计划
- imp执行错误IMP-00010
- xdg-open命令
- java校园实习兼职
- 《战神3》GDC技术制作团队研讨报导
- 1312_适用7z命令进行压缩与解压
- 数字水印(DWT算法Python实现)
- arduino笔记22:Aeduino Mega2560
- 手机和电脑在局域网下快速传递文件,隐私保证,快速搭建一个FTP