Google colab直接使用Os.listdir

时间:2019-12-07 04:57:33

标签: python google-colaboratory listdir

我是google colab的新手,我想知道google colab是否能够直接访问计算机cdrive上的文件。

import os
path = 'C:\\Users\\guest\\Desktop\\'

for file in os.listdir(path):
    print(file)

出现的错误消息是[Errno 2]没有这样的文件或目录:'C:\ Users \ zhuan.lim \ Desktop \ script tools \ Python Scripts \'

我在线搜索了一些例子,并说首先使用以下命令上传文件:

from google.colab import files
uploaded = files.upload()

但是,google colab是否有另一种方法可以直接从驱动器中读取数据?

谢谢。

2 个答案:

答案 0 :(得分:0)

,除了files.upload()之外没有其他方法,因为。但是我认为您正在寻找一种更友好的方式来获取文件。您可以将文件拖放到 Google云端硬盘中,然后通过插入以下行将其挂载到Google Colab会话中在单元格中并执行它:

from google.colab import drive
drive.mount('/content/gdrive')

它会提示您进入一个URL进行身份验证。单击URL并允许Google Colab访问您的Google云端硬盘文件后,即可访问您的Google云端硬盘文件。此处进行更详细的说明:Import data into Google Colaboratory

答案 1 :(得分:0)

您可以通过三种方式使Google Colab访问计算机上的文件:

  1. 将文件上传到Google Colab。
from google.colab import files
uploaded = files.upload()
  1. 将文件上传到您的Google云端硬盘帐户,然后在Colab上安装Google云端硬盘。以我的经验,这是最有用的方法。另外,请注意,这使您可以读写Google云端硬盘(就好像是本地驱动器一样)。
from google.colab import drive
drive.mount('/content/gdrive')
!ls ./content/gdrive

加载后,单击左窗格中的文件以访问文件结构,如以下屏幕截图所示。

enter image description here

  

注意:或者,单击文件>>挂载驱动器,这将插入代码段以将Google云端硬盘挂载到您的Colab Notebook中。运行该单元后,您将看到GDrive挂载。

  1. 启动本地运行时,然后访问它。在这种情况下,colab将使用您的本地资源,并且本地文件也可以访问。在启动此选项之前,请务必阅读安全注意事项/警告。我还没有亲自尝试过,您自己一个人就可以了。

我将在下面解释选项3。

将Colab连接到本地运行时

Colab使您可以连接到本地运行时。如果您已经按照here的说明安装了 jupyter_http_over_ws ,则应该只提供用于启动本地运行时并从colab连接到它的端口。

步骤1

单击重新连接,然后选择“连接到本地运行时”。 (colab的右上角)。 enter image description here

步骤2

单击超级链接:these instructions,在如下所示的弹出窗口中(在步骤3中),以安装 jupyter_http_over_ws (如果尚未安装)。

  1. 安装并启用jupyter_http_over_ws jupyter扩展程序(一次性)
pip install jupyter_http_over_ws
jupyter serverextension enable --py jupyter_http_over_ws
  1. 启动服务器并进行身份验证。 新的笔记本服务器正常启动,尽管您将需要设置一个标志来显式信任来自Colaboratory前端的WebSocket连接。
jupyter notebook \
  --NotebookApp.allow_origin='https://colab.research.google.com' \
  --port=8888 \
  --NotebookApp.port_retries=0

有关更多详细信息,建议您查看these instructions

步骤3

提供用于启动本地运行时(本地计算机上的jupyter笔记本)的正确端口号(例如8888)。

enter image description here