この質問が頻繁に寄せられることは承知していますが、インポートに関して非常に具体的な問題があります。次のようなファイル構造があります。
main/main.py
main/test_device.py
main/lib/instructions.py
main/device/android.py
main/temp/example.py
基本的に、ここで起こっていることは、私のプログラム ( main.py
) がいくつかの小さなスクリプト ( ) を作成し、temp/
それらを実行しようとすることです。ただし、これらのスクリプトはそれぞれ と を参照lib/instructions.py
しdevice/android.py
ます。このコードは、次のファイルを実行します。
name = "temp/test_" + str(program_name) + ".py"
input_file = open("test_device.py", "r")
contents = input_file.readlines()
input_file.close()
contents.insert(7, "program = [" + ", ".join(str(i) for i in instructions) + "]\r\n")
contents.insert(8, "count = " + str(program_name) + "\r\n")
contents = "".join(contents)
input_file = open(name, "w+")
input_file.write(contents)
Popen("python " + name)
すべてのディレクトリに__init__.py
ファイルがありますが、これらのファイルはスクリプトであるため、相対インポートを使用できません。これらのライブラリをインポートするにはどうすればよいですか?