1. ホーム
  2. python

[解決済み] 他のipynbファイルからipynbファイルをインポートする?

2022-06-18 15:16:36

質問

インタラクティブPython(ipython)は、特にあなたがその場で物事をつなぎ合わせているとき、単に素晴らしいです...そしてそれは、簡単に元に戻ることができるような方法で行われます。

しかし、興味深いのは、複数の ipython ノートブック (ipynb ファイル) を持つことのユースケースと思われます。 ノートブックが他のノートブックと関係を持つことは想定されていないようですが、他の ipynb ファイルをインポートしたいことを除けば、それは理にかなっています。

私が見た唯一の回避策は、私の *.ipynb ファイルを *.py ファイルに変換し、それを私のノートブックにインポートすることです。 1 つのファイルにプロジェクトのすべてを保持させることは、特に私が本当にコードの再利用 (python の中核的な教義ではないでしょうか) を推進したい場合、少し奇妙です。

私は何かを見逃しているのでしょうか?これは ipython ノートブックのサポートされている使用例ではないのでしょうか。ipynb ファイルを別のノートブックにインポートするために使用できる別のソリューションがありますか? 私は ipynb を使い続けたいのですが、今は本当に私のワークフローを台無しにしています :(

どのように解決するのですか?

実行する

!pip install ipynb

として、もう一方のノートブックをインポートします。

from ipynb.fs.full.<notebook_name> import *

または

from ipynb.fs.full.<notebook_name> import <function_name>

すべてのノートブックが同じディレクトリにあることを確認します。

編集1: 公式ドキュメントはこちらでご覧になれます -。 https://ipynb.readthedocs.io/en/stable/

また、ノートブックからクラス & 関数の定義のみをインポートしたい場合(トップレベルのステートメントはインポートしない)には ipynb.fs.defs の代わりに ipynb.fs.full . 完全な大文字の変数の代入も同様に評価されます。