##条件
Pythonのバージョンによって?できるものとできないものがあるようです。
いくつか例をあげたので、もし失敗したら他の方法を試してみてください。
##フォルダの構成
├─python
| main.py
|
| ├─code
| | |mnist.py
|
| ├─dataset
| | |activation_function.py
##やりたいことリスト
- main.py内でmnist.pyをimportしたい!!
- mnist.py内でactivation_function.pyをimportしたい!!
- mnist.py内でmain.pyをimportしたい!!
##やりたいこと1
main.py内でmnist.pyをimportしたい!!
###方法1
import sys
sys.path.append("code")
import mnist
###方法2
「Pythonの自作モジュールをimportしたいならsys.pathを設定しよう」を参考にさせていただきました。
自分の環境では動作しませんでした。環境によっては動作するかもしれません。
import sys
sys.path.append("python/code")
import mnist
##やりたいこと2
mnist.py内でactivation_function.pyをimportしたい!!
###方法1
ゼロから作るDeepLearningを参考にしました。
自分の環境では動作しませんでした。環境によっては動作するかもしれません。
import sys, os
sys.path.append(os.pardir) # 親ディレクトリのファイルをインポートするための設定
import dataset.activation_function
###方法2
import sys
sys.path.append("")
# sys.path.append("./")でも可能
# sys.path.append(".")でも可能
import dataset.activation_function
###方法3
import sys
sys.path.append("dataset")
import activation_function #ちょっと綺麗になる
##やりたいこと3
mnist.py内でmain.pyをimportしたい!!
これはわかりませんでした!!可能であるのならば教えてください!!
まず下のファイルから上のファイルをimportするのはフォルダーの構造として駄目な気がするので、フォルダー構成を見直せ!ということなのかもしれません。
ちなみに以下のことを試してみましたが自分の環境では、動作しませんでした。
import sys
sys.path.append("../")
import main
##おわり
紹介した多くの方法がPython2系では動かないと思います。
Python3を使っておきましょう
いくつか動かないのはおそらく親フォルダーの扱いの差だと思うのですが、これはOS(MacとWindows)の差なのかな?あとで検証するかもです。
タイトルの「ファイル」の部分が適切では無い気がしますので、それに置き換わる何かがあればコメントで教えてくださいm(_ _)m