1
我正在探索将Python应用程序组织到不同的结构中,而对我来说最自然的一个不适用,因为看起来像循环依赖。该组织的目标是将课程移入自己的文件,并让模块由其自己的__init__.py
控制。在模块中组织Python代码?
无论如何对代码。我有这个结构的应用程序
/app
|__ user
| |__ __init__.py
| |__ user_dao
| |__ user_dto
| |__ user_record
|
|_app.py
之后,/app/user/__init__.py
看起来像这样。
from user_dao import UserDAO
from user_dto import UserDTO
from user_record import UserRecord
和所有用户对象在liniar对象图UserDTO -> UserDAO -> UserRecord
其中->
相当于“依赖于”彼此依赖。
最后在app.py
还有类似
from user import UserDAO
from user import UserDTO
东西当应用程序试图运行我的错误
ImportError UserDAO
与指向循环依赖堆栈跟踪。除了将所有类放在同一个文件中以便模块工作之外,是否还有更好的方法来组织Python中的类似代码。
关于python应用程序设计的任何建议都很有帮助,谢谢。
不应该是'from user.userdao import UserDao'? – arynhard
我试过这段代码,对我来说没问题,没有ImportError。我使用python 2.6.6 – Alexis
也用python 2.7.3在windows上测试,没有错误。 – Alexis