从colab中的.ipynb文件创建软件包

时间:2020-08-07 16:10:28

标签: python google-colaboratory

我正在重构colab项目以创建程序包。目前,我的“软件包”是一个ipynb文件,我将其称为每个项目

all_files = ["helpers/timer", 
             "helpers/beeper", 
             "helpers/fileHelper",

             "api_interaction/fetcher", 
             "api_interaction/spider",
              
             "analyzers/attributeAnalyzer",
             "analyzers/midiAnalyzer"  
            ]
for file in all_files:
  %run "{file}.ipynb"

我尝试在每个子文件夹中放置一个__init__.py文件,但无法完全了解如何从py文件运行ipynb文件。

理想情况下希望能够调用import project.helpersimport project.api_interaction等。在colab中有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

来自@thorntonc的想法

import os

folders = ["helpers", "api_interaction", "analyzers"]

for folder in folders:
  for obj in os.listdir(folder):
    if obj.split(".")[-1] == "ipynb":
      py = f"{folder}/{obj}"
      print(f"Running {py}")
      os.system(f"jupyter nbconvert --to python {py}")