前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >给Python加上自动补全功能

给Python加上自动补全功能

作者头像
py3study
发布2020-01-07 23:32:53
1.5K0
发布2020-01-07 23:32:53
举报
文章被收录于专栏:python3python3

最近在学习deeplearning, 把理论看了一遍后,准备开始用TensorFlow做开发。当然了,我们现在需要用到Python了。习惯了自动补全功能,还是想在Python下可以自动补全的,看了很多的帖子,http://blog.csdn.net/robertsong2004/article/details/48165557,确实可以自动补全了。

但是发现了每次运行完Python后,exit()退出Python环境后,发现就进不去Python了,呵呵了,仔细看一下发现,history的命令也要加入到startup文件中,这不是很蛋疼,不能每次都要清理里面的exit()历史记录,所以进入里面发现,historyfile?=?os.path.join(os.environ['HOME'],'.pythonstartup') ,这句话把history的命令添加到该文件末尾,问题就出在这里了,所以,把这个文件改了就OK了,history文件单独建立一个history文件,在~下vim .pythonhistory, 然后把原来的语句改为:

history_file?=?os.path.join(os.environ["HOME"],".pythonhistory") ,其他都不变,这样可以了。最后原来的帖子变为:

  1. #?python?startup?file??
  2. import?readline??
  3. import?rlcompleter??
  4. import?atexit??
  5. import?os??
  6. #tab?completion??
  7. readline.parse_and_bind('tab:?complete')??
  8. #history?file??
  9. historyfile?=?os.path.join(os.environ['HOME'],'.pythonhistory')??
  10. try:??
  11. ????readline.read_history_file(historyfile)??
  12. except:??
  13. ????pass??
  14. atexit.register(readline.write_history_file,historyfile)??
  15. del?os,historyfile,readline,rlcompleter ?

下面记录一下详细过程:

1. ?cd ~

2. ?vim .pythonstartup

?复制上面的代码到该文件中,保存退出(:wq)

3. vim .pythonhistory

新建history文件:?继续保存退出(:wq)

4. vim .bashrc

在其末尾加上:export PYTHONSTARTUP="/home/xxxx/.pythonstartup" (最好绝对路径,xxxx对应你的用户名)

5.?source .bashrc

source一下.bashrc文件就OK了

自动补全效果还是可以的,不过还是有些不完美的地方。

比如想要自动补全tensorflow,这个功能还是不可以实现的。用ipython就非常方便,

另外,我们经常会ftp到服务器上开发,在shell下编辑Python文件的话,还是少不了vim编辑文件,这时候,我们也要在编辑文件的时候需要自动补全,这时候就需要一个字典了,可以参考http://www.jb51.net/article/58009.htm这个,我测试过可以应用,不过字典中没有tensorflow的东西,需要自己添加,后面我会慢慢解决这个问题。

工欲善其事必先利其器,环境这一块先到这里了,后面再慢慢记录。当然了,希望寻找一些志同道合的一起学习tensorflow。

2017-5-2 续:

vim下安装TensorFlow支持

其实只需要一个命令:

代码语言:javascript
复制
python pydiction.py tensorflow

不过一定要注意,要把当前文件夹定位到pydiction.py文件所在的位置:~/.vim/pydiction

然后你会发现生成了新的字典文件,查找一下TensorFlow,就发现加入了好多

另外一个要注意的地方.vimrc里面的字典路径是在tools文件夹下,这里只需要把新生成的字典文件copy到tools文件夹下覆盖完成即可了。(cp命令,自行查找如何应用)

测试一下效果:

是不是感觉棒棒哒

这里面有个小技巧,你在import as之后,由于字典中没有tf关键词,我这里把所有的TensorFlow的命令全部复制添加到了文件尾,然后用tf批量替换tensorflow即可。注意不要全局替换,用CTRL+v的模式替换

更新2017-11-15

vim配置:https://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html,这是一个非常好用的配置文件,但是带来一个问题就是python没有办法补全了,解决方法非常简单:

"Pydiction let g:pydiction_location =‘xxxxxxxx’

这里还是上面配置好的字典位置,这样看一下代码如何

有没有非常炫酷的样子

2019年9-3日更新

现在有个非常好用的vim配置文件,可以一键完成自动补全、语法高亮、文件管理、blabla等的功能,推荐用vimplus这个,现在用了半年了,非常好用,地址直通车:https://github.com/chxuan/vimplus

一切按照git说明来做,亲测有效。

如果要在服务器端进行配置,会出现没有root权限的问题,需要自己手动安装ctag这个软件,expert执行文件到PATH,服务器端也可以完美运行。如有什么问题,可以评论交流。

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com