自动编写Python程序的神器,Python 之父都发声力挺!

就在不久前,kite——那个能够自己编写python代码的AI,Python 之父 Guido van Rossum 使用之后,也发出了「really love」感叹,向大家墙裂推荐了这一高效工具。莫非程序员离“失业”又迈进了一步吗?要想知道这个答案,首先得看看kite的代码编写究竟能做到何种程度。

01.什么是Kite

最新的kite是一款桌面应用程序,可以与现有的编辑器和终端进行集成化、并行运行,你可以将kite视为IDE的一个插件,它以大量的云端代码为基础,使用机器学习进行训练,从而预测下一步所需要写的代码,达到“智能编程”的效果。目前Kite支持的编辑器包括Sublime Text、emacs、vim、PyCharm和 Atom,支持windows和大多数linux操作系统。

根据官网的介绍,kite主要有以下几个作用和特点:1).超强的代码补全功能相对于传统的“单词”型代码补全,kite的AI模型在某些情况下可以根据上下文预测下一步需要的一系列代码元素,从而省去大量的修补工作,极大提升工作效率,在下图中的例子中,使用kite后的手动输入量比不使用kite几乎减少了1倍。此外,kite还具备简单的错误识别和修正功能。

2).友好的代码示例参考当我们需要使用一个新的库或者函数的时候,通常会去查阅它的文档,而kite则提供了示例代码,它可以让我们跳过文档了解其他人(云端上的代码)是如何使用这个函数的(下图),这个功能同样适用于我们自己定义的方法。

3).清晰的终端索引文档除了示例代码之外,kite还提供清晰的终端索引文档(下图),支持以统一的格式显示文档,其中收集了800多个带有代码示例的Python库,我们可以很轻松地获取文档、查询需要的内容。

kite发展至今绝非一日之功,从下面这张图能够看到kite最近的几个演化阶段,除了代码补全功能的增强外,最重要的一点就是实现了kite的本地化。要知道以前我们必须把自己的代码上传到云端才能享受kite提供的各种便利功能,虽然有一些加密措施,但安全和隐私方面还是存在不小隐患的。现在好了,我们将代码放在本地的计算机上也可以使用kite,安全性大大提升。

02.安装和配置

虽然kite目前已经支持linux,我在这里还是以windows为例进行演示,不管哪个版本的安装程序,都可以在kite官网进行下载。

下载并运行安装文件,kite安装完成后会弹出下图中的界面,要求选择安装模式——安装所有支持的IDE插件或者手动指定需要安装的插件,选择哪一个要根据自己的实际情况而定,如果你的电脑中安装了emacs、vim、PyCharm等大量的IDE,不妨选择第一项;如果仅仅安装了一两个IDE,个人建议选择第二项比较合适。

如果想用固定账号使用可以在此处输入自己的邮箱,否则直接点击最下边的“continue without email”也能够正常使用。

下图显示的是kite的文档页面,在右上角可以切换文档模式,在“follow cursor”模式下,kite会实时跟踪当前代码中正在输入的库和函数,并显示对应的文档。当然,无论在哪个模式下,在文本框中手动查找函数文档都是可行的。

点击上图中右下角的齿轮标签进入设置的Home页面,在这个页面中可以进行账号的相关操作,也可以进行风格设置。

然后切换到Plugins页面,这里可是kite能否顺利使用的关键。从下面这幅图中想必一眼就能看出是与IDE的关联集成有关,如果在安装后选择了手动安装指定的插件,就需要在这里为自己的IDE安装kite支持。虽说在官方说明中写的是支持多种编辑器,但其实kite还是很挑剔的,比如pycharm它只支持2018.01以后的版本,对sublime text 3则要求必须与kite安装在同一盘符。看来选择手动安装指定插件还是有好处的,不然怎么会发现这么多坑。

我不想更新pycharm版本,在经过一番折腾之后成功地实现了sublime与kite的集成,打开sublime后会在左下角出现“kite:ready”的字样(下图),证明安装关联成功。

03.效果实测

眼动不如手动,既然kite如此好用当然要亲自尝试一番了。1).kite的代码补全和文档功能确实非常好用。我个人偏爱sublime,但是sublime有一个重大缺陷就是代码补全功能偏弱,这下问题得到了完美解决;另外,当kite文档切换到“following cursor”模式的时候,kite会自动跟踪当前光标所在的库或者方法,同步显示对应的文档信息。下图就是我在使用detetime模块时的代码提示效果和kite页面。

2).看下代码示例紧接上一步的操作,当完整地输入准备使用的函数后,在光标附近就会弹出对应函数的使用样例(下图)。当然,datetime.datetime.strptime方法的自由度比较低,所以给出的示例就比较单一,但是像matplotlib或者pandas中的有些方法,可能会给出很多条示例代码供我们参照。

需要注意一点,当kite和IDE的相关插件成功安装后,在启动IDE时kiteserver会自动加载,即使不启动kite应用程序也可以使用代码补全、示例提示等功能,不过如果要查阅文档的话,还是需要启动kite的。


最后说下我个人对kite的看法,其实与kite类似的项目还有很多,例如谷歌的AutoML系统、Codota公司的人工智能辅助编程项目等等。就目前来看,这些号称能够自动编程的人工智能还只能完成一些较为简单的任务,距离能代替人类程序员的程度还有很长的路要走。

因此程序员们暂时还不必担心这种人工智能的出现会导致失业,相反的,这些项目与其说是人工智能倒不如说是编程辅助工具,至少目前来看kite对提高我们的编程效率还是非常有帮助的,有兴趣的小伙伴不妨亲自尝试一下。

(0)

相关推荐

  • Python程序员常用工具!

    在众多编程语言之中,选择Python编程进行入门绝对是首选,该语言简单易学.容易上手.发展前景好,越来越多的人都会花费一定的时间去学习Python. 在学习Python的过程中,一定要找到合适的工具, ...

  • 我们一直谈论“写代码”,但你会“读代码”吗?

    编程,又被称作"写代码".这个说法有可能会带来一点点误解,让人觉得如何"写"是学习编程要解决的主要问题.但事实并非如此.尽管最终代码要在键盘上敲出来,但这个过程 ...

  • 怎么用手机编写Python程序?

    手机编写python程序,其实完全可行,目前有许多app都做了适配,下面我简单介绍3个,感兴趣的朋友可以尝试一下: 01.Python编译器 这是一个非常轻巧.便捷的手机python编程软件,安装包也 ...

  • Python第2讲编写和运行HelloWorld程序(在提示符>>>后可以输入Python程序每输入一行程序会被执行一行)

    https://m.toutiao.com/is/e8vfo1C/ 本讲通过Python语言的Hello World程序,介绍Python程序的执行方法. 1.交互式执行 上一讲介绍过,Python支 ...

  • 在vs code上怎么编写python程序?

    这个非常简单的,只需要安装一下Python插件,之后配置一下python.pythonPath路径(即本地Python解释器路径),最后就可以直接编写Python程序并运行了,下面我简单介绍一下配置过 ...

  • 编写第一个Python程序

    在这节开始前,我们先来测试一下我们安装的Python软件能否正常启用 我们来右击开始菜单,选择运行:或者直接按住win + S键,输入"运行" 在此窗口输入cmd,按回车 会弹出这 ...

  • Python制作【大麦网】自动抢票程序

    前言 大麦网,是中国综合类现场娱乐票务营销平台,业务覆盖演唱会. 话剧.音乐剧.体育赛事等领域. 但是因为票数有限,还有黄牛们不能丢了饭碗,所以导致了,很多人都抢不到票 那么,今天带大家用Python ...

  • 编写高质量代码:改善Python程序的91个建议.1

    人生苦短,睡觉最好! -U 是--upgrade的缩写,如果以已经安装就升级到最新版 先得安装一下 输出的没毛病 我们实验一下 我提前把代码改过 pep8 --show-source --show-p ...

  • python管理文件神器os.walk

    原文: https://blog.csdn.net/qq_35866846/article/details/107823636 作者:诡途 遵循 CC 4.0 BY-SA 版权协议 大家好,欢迎来到 ...

  • 总结90条写Python程序的建议!

    作者丨笑虎来源丨http://zhuanlan.zhihu.com/p/32817459 自己写 Python 也有四五年了,一直是用自己的"强迫症"在维持自己代码的质量.都有去看 ...

  • 用一个开源工具实现多线程 Python 程序的可视化 | Linux 中国

    原创 邀你一起成为开源贡献者 Linux中国   导读:VizTracer 可以跟踪并发的 Python 程序,以帮助记录.调试和剖析. 本文字数:4686,阅读时长大约:6分钟 https://li ...