采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师好,关于这里循环导入问题。
我在 app/__init__.py模块下,将web实例化了,第12行导入book。
在book.py模块下,第10行,我重新导入web。按理说,应该重新跳到__init__文件下,重新实例化一次web。但这里却没有,反而一直向下运行。
按照循环导入原则,应该是跳到被导入模块下呢,为什么这里没有跳转呢?
难道__init__文件,不遵循这个原则吗?
4月2号有个帖子关于循环导入讲的挺清楚的
循环导入不是只会导入一次吗?
嗯嗯,老师好。对这个问题,我昨天反复思考与实践后,我终于想明白了。在app/__init__.py 第12行,导入book模块的时候,作为__init__启动文件重新运行了一遍,所以没有继续导入book模块。所以在book模块第10行下,继续向下执行。 不过这里web实例化了两次,虽然id是一样,注册的 url_map endpoint,以及view_func 都指向同一个web.search,但这样真的没问题吗?
我自己早些时候,又debug了一下,发现HTTP网络请求有两次,应该是这里引起的。我接着学习,这个问题先放着,后面再思考debug一下。
登录后可查看更多问答,登录/注册
7月老师深入浅出剖析Flask核心机制,和你一起探讨Python高级编程
1.2k 20
2.3k 17
2.3k 15
2.5k 14
1.4k 13