我有以下目录结构
Root/
Main.py
/Controller->
/MotorController->
MotorController.py
__init__.py
/Tools->
test.py
现在Tools / test.py有一些测试代码,基本上使用相对路径导入MotorController.py,如下所示
工具/ test.py 来自..Controller.MotorController.MotorController import *
这给出了一个错误,即不能在非包装上使用相对路径。将test.py移动到Root目录可以解决问题但我真的希望我的脚本位于Tools目录中。我该怎么做?。
这是一个相关的问题;假设我在上面创建一个适用于特定机器人的包MotorController.MotorController.py。现在我想要一些仅适用于该特定机器人的校准脚本,因此我计划将该脚本放在与MotorController.py相同的目录中。但是由于相对路径等原因,似乎无法从与Package相同的目录运行脚本。在这种情况下是否存在解决方法或一般原则是什么。
答案 0 :(得分:0)
要制作文件夹的包,您必须包含__init__.py
文件(可以为空)
因此,您应该在根结构的每个文件夹中添加其中一个文件。
答案 1 :(得分:0)
您需要一个文件来指示该文件夹是python包。
标准是一个(通常是空的)__init__.py
文件,请注意总共有4个下划线。