采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
问答区的两个类似的问题都没看明白。拿课程中的例子来说,是不是如果 c12 和 c13 同时引入t包里的c8,c8只会导入一次? 那为什么后面又紧接着说如果可以重复导入,t包里的__init__里的import会执行很多遍?t包里的__init__和被导入到c12和c13的t.c8有什么关系呢?是因为c12和c13引入了c8同时必然运行__init__?
导入包都只会执行一次,以后再需要使用包里的变量时,python会从缓存中加载。第二个问题,我说过t包里的__init__会执行很多次吗?麻烦告诉下我具体的时间,我看看视频
大约从1:06秒到1:11秒,应该是举例说明但是思维有点跳没听明白。“以后再需要使用包里的变量时,python会从缓存中加载”这里就明白啦。因为上一节课的操作就是导入很多次,然后这节课又说只执行一次导入,这当中的区别,或者再需要使用时程序运行是怎样的机制来实现,有个总结性的说法可能更方便纠结如我的人理解。
这个以后再使用时是什么意思呢?可以举个例子吗?
我认为呢,不同的模块导入t包里面的c8模块是需要导入多次的,就是这节课里面老师你不该举例时候说c12/c13导入不能重复导入,你应该说在c12导入过一次之后,再执行c12模块的时候,代码的运行时不会重复导入c8模块的内容。你把c12/c13放一起说,我就以为我c12导入过一次,c13就不用导入了。我一开始也没明白,来翻别人的提问,感觉我现在的理解对了,就是如上说的。老师这边你觉得呢?
嗯嗯,确实有道理。可能我们要区分下加载和导入,因为你要使用变量,不import是不行的。
我也是没明白,看了你说的才明白,还想为什么不能重复导入,分清加载和导入,这两个很重要。
再执行c12模块的时候,代码的运行是不会重复导入c8模块的内容。这个是什么意思?可以举个例子吗?多谢
登录后可查看更多问答,登录/注册
语法精讲/配套练习+思考题/原生爬虫实战
5.6k 7
2.5k 3
2.2k 4
4.2k 22
2.3k 19