ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

介绍一款史上最强的Python在线编辑器——谷歌出品

2019-05-07 16:37:44  阅读:466  来源: 互联网

标签:Colaboratory Python 代码 谷歌 出品 编辑器 notebook colab 云端


来源商业新知网,原标题:谷歌出品|推出了史上最强的Python在线编辑器

 

今天给大家推荐一款超级强大的在线编辑器Colaboratory,Colaboratory 是一个谷歌提供的 Jupyter notebook环境, 不需要进行任何设置就可以使用,并且完全在云端运行,最重要的是Colaboratory免费 ,这绝对是谷歌提供的一项的福利啊。下面就来聊聊Colaboratory的基本用法和牛逼之处。

01. 使用篇

1)准备阶段

Colaboratory是一款谷歌服务,这里我推荐使用chrome浏览器+谷歌访问助手,这样在访问谷歌相关网站的时候就非常的方便。另外,Colaboratory的正常使用需要依托谷歌账号,如果没有的话建议注册一个。

以上工作都完成后,就可以登陆Colaboratory网站来体验一番了,下面这幅图就是Colaboratory(以下简称colab) 的介绍页面。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

2)基本用法

用过jupyter notebook的朋友应该对这个界面非常的熟悉,事实上colab的操作与普通的notebook相似度非常高,下面我们就新建一个Python3的notebook(下图),简单地演示一下它的基本用法。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

在下图中的代码框中输入Python代码,点击左侧的按钮执行程序,就会在下方输出打印结果,由于程序第一次运行之前colab会自动连接云端服务器,所以速度可能会有点慢。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

值得一提的是,上面这个代码框可不是只能执行Python代码,你还可以把它当作ubuntu的终端来使用,只不过要在所有需要执行的指令之前加一个“!”号。例如,我们如果想查看当前的云端服务器中自带了哪些Python库的话,可以执行“! pip list”指令,结果如下:

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

可以看到,colab默认安装了大量的Python第三方库,就数据科学方面的库而言,colab的自带库应该会比Anaconda更加完善。

既然可以使用pip指令,那如果想安装其他Python库的时候也可以很方便地安装了,我拿tushare做了一个试验,结果如下:

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

除了python库之外,使用这种方式还可以执行其他linux指令来部署你自己的云端环境,别忘了在指令前加一个“!”号就好。

2.配置篇

1).常用配置

我个人认为最常用的配置项主要集中在两个地方:

一是"工具"中的偏好设置(下图) ,在这里可以设置主题背景(共分light和dark两种)、缩进宽度等风格,有趣的是colab还自带coding特效,如果威力等级一栏选择了“many power”,那么在写代码的过程中就会产生非常炫酷的效果。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

二是“修改”中的笔记本设置 ,这里可以设置运行时的python版本和硬件加速器。说到这里不得不佩服谷歌,居然提供了GPU和CPU两种加速模式 ,只要在选项中进行设置,就可以免费获取额外的算力,这下通过在线编辑器使用TensorFlow再也不是梦想了。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

除此之外,colab还允许通过共享的方式邀请他人共同讨论、完善代码;如果你不想将代码放到云端服务器中运行, 还可以连接本地的开发环境运行程序(下图)。

也可以将colab与github相关联,把notebook中的代码备份到GitHub中...关于这些内容,本文不进行详细说明,有兴趣的小伙伴可以自行尝试。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

2)云盘挂载

先来说说挂载云端硬盘的重要性。colab中的代码文件是放在云端服务器中运行的,但存储的位置却是同一账户的谷歌云端硬盘,如果不进行关联设置,colab会默认将notebook文件放到云端硬盘根目录下的“Colab Notebooks”文件夹中 。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

colab的notebook在云端服务器中运行期间是没办法直接读取本地文件的(比如数据集),如果想让程序读取指定文件,只能将其放到谷歌云端硬盘中,然后将云端硬盘挂载到colab。

如果在colab中保存过notebook文件,系统将会自动关联你的colab和云端硬盘账户,否则需要在云端硬盘中进行手动关联(此处略)。 然后在代码框中输入以下代码并运行。

!apt-get install -y -qq software-properties-common python-software-properties module-init-tools

!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null!apt-get update -qq 2>&1 > /dev/null!apt-get -y install -qq google-drive-ocamlfuse fusefrom google.colab import authauth.authenticate_user()from oauth2client.client import GoogleCredentialscreds = GoogleCredentials.get_application_default()import getpass!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URLvcode = getpass.getpass()!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

(代码可以左右滑动)

运行过程中会出现下图中的提示,点击链接进行授权验证,将授权码输入到链接下的文本框中,按回车键继续执行。 注意:不同的环境在这一步的执行情况可能会不太一样,需要灵活对待。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

接着再执行下面两行代码,由于我在挂载前云端硬盘中有文件,所以加上了nonempty参数,否则可以忽视。

!mkdir -p drive

!google-drive-ocamlfuse -o nonempty drive

顺利的话,到这里云盘挂载就完成了,默认挂载的云盘根目录路径是’drive‘,我们来检验一下(下图),可以看到输出的内容和云端硬盘中的文件是一致的。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

这样一来,我们就可以将文件放到云盘中供colab读取,或者将colab的运行结果输入到云盘中了。

03.教学篇

colab作为一款在线编辑器,通过云计算让我们摆脱了装备的限制,不管什么设备,只要能连上 谷歌的网络服务,就可以使用云端的服务器,处理云端的数据集;同时,对于工作地点不固定的人来说,也省去了反复配置环境和拷贝文件的麻烦。

然而, colab给自己的定位却是旨在帮助传播机器学习培训和研究成果 ,所以Colab还关联了一个非常优秀的机器学习学习平台。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

点击上图中的“完整课程网站”链接进入教学网站 ,这里不仅有非常完善的学习资料,还可以根据每个人的基础制定不同的学习计划,更难得的是,无论视频、语音还是文字资料都可以选择中文模式(虽然中文朗读疑似语音合成)。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

除了教学网站,colab还有 大量交互式机器学习分析的端到端示例(seedbank) 供学习和练习,所有seedbank中的项目都可以一键导入colab中运行(下图)。

知识图谱,谷歌出品|推出了史上最强的Python在线编辑器

关于Colaboratory今天就简单介绍到这里, 明明是款编辑器,却集成了教学功能,真的堪称史上最强。 由于篇幅有限,一些细节和功能都没有介绍,有兴趣的同学可以探索体验一下。

标签:Colaboratory,Python,代码,谷歌,出品,编辑器,notebook,colab,云端
来源: https://www.cnblogs.com/xinzhihao/p/10826367.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有