sublime3之内网安装python插件Anaconda的流程


Posted in Python onNovember 10, 2020

重要思路:

如果不知道内网sublime3怎么安装python插件Anaconda,就直接在外网安装一遍,然后把外网解压的插件直接复制到内网对应的文件夹下即可

一般来说,C:\Users\Quincy\AppData\Roaming\Sublime Text 3\Packages这个路径是安装第三方插件的路径,如果找不到就直接使用sublime界面:点击菜单栏preferences->Browse Packages,就会出现上述路径。

sublime3之内网安装python插件Anaconda的流程

将Anaconda文件夹直接拷到内网对应的文件夹下即可,Case closed!

别的插件也是这个原理,为什么要分享思路,搞这个插件看来好多文章,搞得头疼。还有如果有弹出框报错,就按照提示对配置文件设置下错误弹窗就会消失。

如图:

sublime3之内网安装python插件Anaconda的流程

直接提示了在哪处理配置文件,结束!!!

补充知识:使用sublime实现python代码补全

前言

最近一段时间一直都在学习python,很长一段时间内没有找到和是的IDE工具,Pycharm的话,对我来说稍微有点重量级了,因为平常其实是不怎么敲代码的,一般也就写点脚本,或者实现下自己的算法。综合考虑之下,发现使用sublime是一个非常棒的选择,sublime可以成为一个轻量级的IDE。下文的配置和步骤主要实现了额两个功能。

实现python代码的自动补全功能。

能够正常的运行python代码

安装python3和sublime3

首先,你需要安装上述的工具。

sublime3

sublime3之内网安装python插件Anaconda的流程

python3更是可以直接在360软件管家里面安装。

sublime3之内网安装python插件Anaconda的流程

以上两个软件安装的时候,注意避免安装到中文路径中去,不然会出现各种报错。

还有一点,就是安装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,回车确定

sublime3之内网安装python插件Anaconda的流程

然后稍微等待片刻,左下角有状态显示,此时正在读取Package列表。等Package列表出现之后,输入anaconda,选中备选项中的第一个

sublime3之内网安装python插件Anaconda的流程

然后再稍等片刻。安装完成后,在Preferences\Package Settings中会出现Anaconda的选项卡,证明Anaconda包已经下载安装成功。

sublime3之内网安装python插件Anaconda的流程

配置Anaconda

要想正常使用Anaconda,必须要设置你自己Python.exe所在路径,这也是最关键的一步。

如上图所示,打开Settings ? Default,然后ctrl+f搜索python_interpreter,找到没有注释的一行,大约在95行左右:

sublime3之内网安装python插件Anaconda的流程

将默认路径修改为你自己python.exe所在的路径,切记是python.exe的路径,而不是python.exe所在文件夹的路径.

然后保存,重开Sublime,下来便可以编辑Python文件感受一下不输于PyCharm的自动完成功能了。

个性化

默认的Anaconda设置可能并非我们需要的,比如自动完成的力度,以及想关闭Anaconda的一些自带的我们不需要的功能。

下面是我自己的配置文件,我仅对我自己所修改的配置做解释,更详细的解释Settings ? Default中都有。

个性化的修改推荐在Settings -User中进行,这样子也清楚自己都修改了哪些配置,也方便重新安装环境的时候保存迁移配置。

我自己的配置如下:

JavaScript

<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",
}
{
  “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来查看了。

显示效果如下:

sublime3之内网安装python插件Anaconda的流程

这个功能好不好用智者见智仁者见仁吧,因为除了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那一节,讲的很细致。

以上这篇sublime3之内网安装python插件Anaconda的流程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中尝试多线程编程的一个简明例子
Apr 07 Python
十条建议帮你提高Python编程效率
Feb 16 Python
Python装饰器的执行过程实例分析
Jun 04 Python
django框架自定义模板标签(template tag)操作示例
Jun 24 Python
python+numpy按行求一个二维数组的最大值方法
Jul 09 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
Aug 01 Python
python 列表推导式使用详解
Aug 29 Python
python tkinter组件摆放方式详解
Sep 16 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
Dec 18 Python
python词云库wordCloud使用方法详解(解决中文乱码)
Feb 17 Python
Python selenium模块实现定位过程解析
Jul 09 Python
numpy array找出符合条件的数并赋值的示例代码
Jun 01 Python
python+excel接口自动化获取token并作为请求参数进行传参操作
Nov 10 #Python
python request 模块详细介绍
Nov 10 #Python
解决使用Pandas 读取超过65536行的Excel文件问题
Nov 10 #Python
python各种excel写入方式的速度对比
Nov 10 #Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
Nov 10 #Python
详解vscode实现远程linux服务器上Python开发
Nov 10 #Python
Python调用飞书发送消息的示例
Nov 10 #Python
You might like
PHP 得到根目录的 __FILE__ 常量
2008/07/23 PHP
PHP 输出简单动态WAP页面
2009/06/09 PHP
利用php实现禁用IE和火狐的缓存问题
2012/12/03 PHP
基于wordpress主题制作的具体实现步骤
2013/05/10 PHP
PHP使用GETDATE获取当前日期时间作为一个关联数组的方法
2015/03/19 PHP
PHP常用工具函数小结【移除XSS攻击、UTF8与GBK编码转换等】
2019/04/27 PHP
jQuery 遍历-nextUntil()方法以及prevUntil()方法的使用介绍
2013/04/26 Javascript
浅谈javascript六种数据类型以及特殊注意点
2013/12/20 Javascript
分享20款美化网站的 jQuery Lightbox 灯箱插件
2014/10/10 Javascript
JavaScript中的Web worker多线程API研究
2014/12/06 Javascript
关于JS中prototype的理解
2015/09/07 Javascript
基于jquery实现日历签到功能
2020/09/11 Javascript
理解Javascript的call、apply
2015/12/16 Javascript
JavaScript将base64图片转换成formData并通过AJAX提交的实现方法
2016/10/24 Javascript
nodejs 实现钉钉ISV接入的加密解密方法
2017/01/16 NodeJs
基于JavaScript实现活动倒计时效果
2017/04/20 Javascript
微信小程序实现图片上传功能实例(前端+PHP后端)
2018/01/10 Javascript
详解vue 数据传递的方法
2018/04/19 Javascript
JavaScript实现简单音乐播放器
2020/04/17 Javascript
ES6中的迭代器、Generator函数及Generator函数的异步操作方法
2019/05/12 Javascript
js实现贪吃蛇游戏(简易版)
2020/09/29 Javascript
python实现合并两个数组的方法
2015/05/16 Python
int在python中的含义以及用法
2019/06/27 Python
python3使用GUI统计代码量
2019/09/18 Python
PyTorch 对应点相乘、矩阵相乘实例
2019/12/27 Python
Python中bisect的使用方法
2019/12/31 Python
印度最大的网上花店:Ferns N Petals(鲜花、礼品和蛋糕)
2017/10/16 全球购物
2014年清明节寄语
2014/04/03 职场文书
教师见习期自我鉴定
2014/04/28 职场文书
副处级干部考察材料
2014/05/17 职场文书
酒店管理失职检讨书
2014/09/16 职场文书
2014年会计人员工作总结
2014/12/10 职场文书
道歉短信大全
2015/05/12 职场文书
广播稿:校园广播稿范文
2019/04/17 职场文书
MySQL系列之七 MySQL存储引擎
2021/07/02 MySQL
JavaScript利用html5新方法操作元素类名详解
2021/11/27 Javascript