【问题标题】:IPython Jupyter: uploading folderIPython Jupyter:上传文件夹
【发布时间】:2016-01-12 02:41:29
【问题描述】:

你能在 IPython Jupyter 中上传整个文件夹吗?如果是这样,怎么做?我当然知道如何上传单个文件,但是如果有大量文件和/或子目录,这会变得很乏味。

【问题讨论】:

  • 你可以上传一个 zip 文件,然后启动一个 notebook 并使用 Python 中的 zipfile 模块来解压它。
  • 我打开了一个问题来跟踪这个github.com/jupyter/notebook/issues/3747
  • 您应该将Joys的答案标记为答案。

标签: ipython jupyter jupyter-notebook


【解决方案1】:

将其转换为单个 Zip 文件并上传。 要解压缩文件夹,请使用下面的代码

import zipfile as zf
files = zf.ZipFile("ZippedFolder.zip", 'r')
files.extractall('directory to extract')
files.close()

但是,有时您可能需要从笔记本下载多个文件。有几种方法可以做到这一点,但最简单的方法是压缩目录并下载 zip 文件:

import shutil
shutil.make_archive(output_filename_dont_add_.zip, 'zip', directory_to_download)

【讨论】:

    【解决方案2】:

    也许只使用 unix 来解压缩数据更容易。

    步骤:

    1. 在您的计算机中将文件夹转换为 .zip 文件。

    2. 将 .zip 文件上传到 jupyter 主页。

    3. 在 jupyter notebook 中运行

    ! unzip ~/yourfolder.zip -d ~/

    在哪里

    ! 告诉 jupyter notebook 你要直接给 unix 代码,而不是 python 代码

    unzip是解压命令

    ~/yourfolder.zip 告诉命令您的 .zip 文件夹在哪里(如果您上传到主文件夹,则在 ~/

    -d ~/ 告诉命令您要将解压缩的文件夹放在哪里(假设您要将其放在主文件夹中,但您也可以将其放在带有-d ~/my_first_level_subfolder-d ~/my_first_level_subfolder/my_second_level_subfolder 等的任何其他子文件夹中.)

    1. 如果要删除原来的 .zip 文件夹,请在 jupyter home 手动删除或使用

    !rm ~/yourfolder.zip

    希望对某人有所帮助

    【讨论】:

    • 只想提一下,还有一个终端可以通过 Jupyter 文件资源管理器 -> “新建 ▼” -> “终端” 来执行unzip [archiv.zip] -d [dest] 命令。
    【解决方案3】:

    把你的文件夹放进去

    C:\Users\'YOUR USER NAME'\
    

    【讨论】:

      【解决方案4】:

      在 Windows 上,在 Jupyter 中打开终端。您将获得一个 Windows Powershell!命令提示符将是 PS。它还将显示本地文件夹名称。但是如果 Jupyter 是远程的,那么这样做:- *如上所述打开终端 *从所有文件夹/文件中创建一个压缩文件 * 将压缩文件拖放到 Jupyter.. 它将被上传 * 打开终端 * 按照this powershell link 中的说明使用 powershell 命令上传。它会是这样的:-

      Expand-Archive -LiteralPath <name of zipped file> -DestinationPath .
      

      【讨论】:

        猜你喜欢
        • 2017-02-21
        • 2016-06-17
        • 2017-05-17
        • 2012-01-14
        • 1970-01-01
        • 2018-04-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多