我在探索Python以及如何构造代码。
考虑以下项目结构
<project root>/controllers/user_controller.py
这个文件包含
class UserController:
def index():
# Something
当从外部导入时,它将作为
import controllers.user_controller
controller_instance = controller.user_controller.UserController()
作为一个Ruby开发人员,如果controllers文件夹是加载路径的一部分(比如在Rails中),那么做controller.UserController()
或者只做UserController()
会更自然。
有没有一种(干净的)方法可以省略包名?我知道我能做到,但我真的不喜欢冗长。
我希望每个类有一个python文件,但我不希望每个类都有一个新模块。
一种方法是将模块导入父模块。换句话说,假设您有这样的目录结构:
coolclass.py的代码:
coolutil.py的代码:
初始化py的代码
因为您在包级别提供了它们,所以现在可以直接从那里导入它们。例如,这将起作用:
相关问题 更多 >
编程相关推荐