鱼C论坛

 找回密码
 立即注册
查看: 6563|回复: 29

[技术交流] 安利一款超强谷歌在线编辑器 #Colaboratory |【免费但需科学上网】

[复制链接]
发表于 2019-5-5 14:32:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 不二如是 于 2019-5-6 09:31 编辑

本帖给鱼油推荐一款超级强大的在线编辑器 Colaboratory

Colaboratory 是一个谷歌提供的 Jupyter notebook环境,不需要进行任何设置就可以使用,并且完全在云端运行。

最重要的是 Colaboratory 免费,这绝对是谷歌提供的一项的福利啊。

1、准备阶段

Colaboratory 的正常使用需要依托谷歌账号,如果没有的话建议注册一个。

单击官网即可打开:传送门

Colaboratory (后续简称colab)是一款谷歌服务,推荐使用 chrome 浏览器,这样在访问谷歌相关网站的时候就非常的方便。
(PS:跟小甲鱼老师学习 Web 开发的鱼油一定都是 Chrome 浏览器啦)

以上工作都完成后,就可以登陆 Colaboratory 网站来体验一番了:
Snip20190505_25.png
上图就是 Colab 的介绍页面


2、基本玩法

colab 的操作与普通的 notebook 相似度非常高。

下面我们就新建一个 Python3 的 notebook(下图),简单地演示一下它的基本用法:
Snip20190505_26.png


会跳转到新页面:
Snip20190505_27.png


在上图中箭头所指处的代码框中输入 Python 代码,回车便可以换行:
Snip20190505_29.png


点击左侧的按钮执行程序,就会在下方输出打印结果:
Snip20190505_30.png


由于程序第一次运行之前 colab 会自动连接云端服务器,所以速度可能会有点慢。

值得一提的是,上面这个代码框可不是只能执行Python代码,你还可以把它当作 ubuntu 的终端来使用。

只不过要在所有需要执行的指令之前加一个“!”号。

例如,我们如果想查看当前的云端服务器中自带了哪些Python库的话,可以执行“! pip list”指令,结果如下:
Snip20190505_31.png
指令很多,部分略


可以看到,colab 默认安装了大量的Python第三方库。

数据科学方面的库而言,colab 的自带库应该会比 Anaconda 更加完善。

既然可以使用pip指令,那如果想安装其他Python库的时候也可以很方便地安装了。

3、推荐配置

最简单的基础配置就是是"工具"中的偏好设置(下图)
Snip20190505_33.png


在这里可以设置主题背景(共分light和dark两种)、缩进宽度等风格,改成暗黑模式:
Snip20190505_34.png


代码效果变为极客范儿
Snip20190505_35.png


有趣的是 colab 还自带 coding 特效,如果威力等级一栏选择了“many power”:
May-05-2019 15-11-07.gif


那么在写代码的过程中就会产生非常炫酷的大爆炸效果:
游客,如果您要查看本帖隐藏内容请回复


高级一点的设置是“修改”中的笔记本设置,这里可以设置运行时的python版本和硬件加速器:
Snip20190505_41.png


说到这里不得不佩服谷歌,居然提供了 GPU 和 TPU 两种加速模式:
Snip20190505_44.png


只要在选项中进行设置,就可以免费获取额外的算力,这下通过在线编辑器使用 TensorFlow 再也不是梦想了!

除此之外,colab 还允许通过共享的方式邀请他人共同讨论、完善代码:
Snip20190505_46.png


如果你不想将代码放到云端服务器中运行,还可以连接本地的开发环境运行程序:
Snip20190505_49.png


也可以将 colab 与 github 相关联,把 notebook 中的代码备份到 GitHub 中。

4、推荐配置

colab 中的代码文件是放在云端服务器中运行的,但存储的位置却是同一账户的谷歌云端硬盘。

如果不进行关联设置,colab 会默认将 notebook 文件放到云端硬盘根目录下的 “Colab Notebooks” 文件夹中。

单击左上角图标即可跳转到云盘:
Snip20190505_50.png


云盘主页:
Snip20190505_52.png


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}
过程截图,时间有点长,等下就好:
May-05-2019 15-33-25.gif


运行过程中会出现下图中的提示,单击链接跳转到登陆授权,一路允许即可:
Snip20190505_53.png


然后将授权码输入到链接下的文本框中,按回车键继续执行:
Snip20190505_54.png


然后看到提示:
Access token retrieved correctly.


接着再执行下面两行代码:
!mkdir -p drive 
!google-drive-ocamlfuse -o nonempty drive

顺利的话,到这里云盘挂载就完成了,默认挂载的云盘根目录路径是 drive。

输入代码测试一下:
import os
print(os.listdir('drive/Colab noteBooks'))
Snip20190505_57.png


可以看到输出的内容和云端硬盘中的文件是一致的。

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

5、《零基础入门学习Python》(第二版)剧透

废话不多说,前方发来的谍照:
4.JPG
5.JPG


更多请看:《零基础入门学习Python》(第二版)#福利!




如果喜欢,别忘了评分


                               
登录/注册后可看大图

评分

参与人数 2荣誉 +10 鱼币 +5 贡献 +3 收起 理由
漂泊信天翁 + 5 + 5 + 3 鱼C有你更精彩^_^
regevilust + 5 鱼C有你更精彩^_^

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-5-5 14:51:56 | 显示全部楼层
不翻墙没法玩
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 2 反对 0

使用道具 举报

发表于 2019-5-5 19:00:43 | 显示全部楼层
看看特效
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-6 10:03:11 | 显示全部楼层
居然都没人夸夸妹子漂亮
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2019-5-6 16:23:44 | 显示全部楼层
甲鱼女装大佬啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-7 18:30:19 | 显示全部楼层
确实好用!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-8 15:08:28 | 显示全部楼层
想请教一下大佬有没有什么推荐的科学上网工具
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-8 17:42:49 | 显示全部楼层
浑水摸鱼,学经验
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-9 07:06:42 | 显示全部楼层
emmmmmm
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-9 09:15:35 | 显示全部楼层
我去试了下,真的不错哈。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-9 10:35:10 | 显示全部楼层
是要翻墙吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-9 13:20:46 | 显示全部楼层

对啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-9 16:29:48 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-5-9 19:53:16 | 显示全部楼层
是不是好用啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-9 21:32:30 | 显示全部楼层
科学上网有捷径没
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-10 21:12:41 | 显示全部楼层
看看怎么用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-10 21:34:40 | 显示全部楼层
回复
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-5-10 22:53:08 | 显示全部楼层
走错了,我学c语言的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-11 11:21:16 | 显示全部楼层
好东东
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-11 17:05:23 | 显示全部楼层
666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 20:04

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表