转载自菜鸟学Python(ID: cainiao_xueyuan)

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

01.使用篇

1)准备阶段

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

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

2)基本用法

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

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

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

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

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

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

2.配置篇

1).常用配置

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

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

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

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

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

2)云盘挂载

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

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 fuse
from google.colab import auth
auth.authenticate_user()
from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass
!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

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

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

 

!mkdir -p drive 
!google-drive-ocamlfuse -o nonempty drive

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

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

03.教学篇

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

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

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

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

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

逆天!谷歌推出Python在线编辑器相关推荐

  1. Google推出了牛逼的Python在线编辑器,以后协同项目代码就省心了

    Google推出了牛逼的Python在线编辑器,以后协同项目代码就省心了,环境配置对于大多数人来说都是拦路虎,我们小白往往不知道: 怎么正确的安装 不知道选择什么 怎么安装常用的第三方库 ... Go ...

  2. python在线编辑器-在线python编辑器

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. windows下python的ide选择:http:blog.csdn. ...

  3. python在线编辑器最新_skulpt搭建Python在线编译器(一):下载、安装

    1.python在线编译器的解决方案 方案一:vscode web版(vscode online) 大名鼎鼎的vscode 推出了web版,也就是说可以在网页上进行编程了. github地址:http ...

  4. python在线编辑器-在线编译或编辑Python的5个最佳工具

    离线Python编辑器和编译器都具有许多功能,但是在线编译器通常在功能上受到限制,并试图满足特定需求而不是满足所有需求,其中在线编译大多数是免费的,所以也受到开发者的热爱. 在本文中,我们将浏览各种狂 ...

  5. python在线编辑器最新_Editor.md 二次开发-markdown在线编辑器

    需求分析 经常需要在网络论坛发布文章进行宣传良心工作室最新免费服务,但每个论坛的编写格式存在差异,给发布带来了很大的障碍. 最近markdown格式的兴起,给广大发布者带来了福音,一种文档格式大部分网 ...

  6. python在线编辑器手机-QPython,一个在手机上运行Python的神器

    之前安利过一款手机上运行Python的神器Termux,不过Termux的使用比较重,它实际是一款linux系统模拟器,安装好Termux后还要再安装python,并且是全命令行操作,一些读者使用起来 ...

  7. python在线编辑器可视化_python软件——wxpython可视化编辑器 v4.1附使用教程

    wxpython v4.1pc版更新日志 1.将wx.Font.AddPrivateFont的示例添加到演示中. 2.在wx.TextCtrl中为OSXEnableAutomaticQuoteSubs ...

  8. python在线编辑器编译excel_python在线编译器的简单原理及简单实现代码

    我们先来看一下效果(简单的写了一个): 原理:将post请求的代码数据写入了服务器的一个文件,然后用服务器的python编译器执行返回结果 实现代码: #flaskrun.py # -*- codin ...

  9. python在线编辑器import_maya_关于脚本编辑器导入python模块

    import sys for p in sys.path: print p rigDir = 'C:\Users\lenovo\Documents\maya\scripts\python\rigLib ...

最新文章

  1. ORM操作models一对多、多对多关系
  2. 百度编辑器(1.4.3—net版)上传图片路径及其他配置
  3. 【WP7】页面过渡效果
  4. CSS Media媒体查询
  5. 机器人抓矸石_基于机器视觉的多机械臂煤矸石分拣机器人系统研究
  6. VS 2008 .NET Framework 3.5 Training Kit
  7. 2022-01-22
  8. android audiotrack权限,Android中AudioRecord和AudioTrack的使用注意
  9. Python中使用PIL快速实现灰度图
  10. 关于并查集的个人再次的理解
  11. 谷歌表格_如何使用宏自动执行Google表格
  12. Unity3d查找游戏对象
  13. SpringBoot 优雅的整合 Shiro
  14. 设计模式——工厂方法
  15. 去掉ul标签前的小圆点
  16. Dynamics CRM 2015Online Update1 new feature之 通过业务规则清空字段的值
  17. 深度学习优化算法大全系列4:AdaGrad(Adaptive Gradient)
  18. php100视频教程75到100讲的解压密码
  19. 前后端分离的跨域请求问题解决
  20. 【飞思卡尔】飞思卡尔摄像头算法基本方法

热门文章

  1. CString To Wchar*
  2. 你想要的宏基因组-微生物组知识全在这(2023.7)
  3. function(ev) //括号里的ev是什么东西,什么意思?
  4. 程序员因开发速度太慢被告,公司索赔90万!网友:活久见
  5. iOS 手势冲突解决思路
  6. stable diffusion(杂谈)
  7. Android-线程与多线程(了解)
  8. 【GDKOI】樱花再见
  9. 【调剂】浙江师范大学2020年硕士研究生招生调剂公告
  10. JS基础知识(三十):JS单线程