同样不太明白包和模块不会被重复导入的问题

来源:7-10 包与模块的几个常见错误_

米苏setsuna

2019-05-07

问答区的两个类似的问题都没看明白。拿课程中的例子来说,是不是如果 c12 和 c13 同时引入t包里的c8,c8只会导入一次?
那为什么后面又紧接着说如果可以重复导入,t包里的__init__里的import会执行很多遍?t包里的__init__和被导入到c12和c13的t.c8有什么关系呢?是因为c12和c13引入了c8同时必然运行__init__?

写回答

2回答

7七月

2019-05-07

导入包都只会执行一次,以后再需要使用包里的变量时,python会从缓存中加载。第二个问题,我说过t包里的__init__会执行很多次吗?麻烦告诉下我具体的时间,我看看视频

0
2
Antai_Zhu
回复
米苏setsuna
这个以后再使用时是什么意思呢?可以举个例子吗?
2019-11-16
共2条回复

chevy_CXW

2019-05-28

我认为呢,不同的模块导入t包里面的c8模块是需要导入多次的,就是这节课里面老师你不该举例时候说c12/c13导入不能重复导入,你应该说在c12导入过一次之后,再执行c12模块的时候,代码的运行时不会重复导入c8模块的内容。你把c12/c13放一起说,我就以为我c12导入过一次,c13就不用导入了。我一开始也没明白,来翻别人的提问,感觉我现在的理解对了,就是如上说的。老师这边你觉得呢?

4
4
PandaTT
我也是被搞困惑了,因为我自己在本地试了 这件模块这件C8C9两个模块文件看了提问和解答我现在也搞清楚。
2019-12-06
共4条回复

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14446 学习 · 4438 问题

查看课程