python导入模块语句,python导入模块的方式

模块导入后,是否可以取消导入?实际上当模块导入后,是无法逆向还原到导入前的状态的,但是可以利用“del 模块名”进行导入模块的删除,此时的删除只是删除了导入模块对应的模块变量名,删除后在调用时找不到模块了,但并没有真正删除整个导入模块。为什么这么说呢?这是因为删除后与删除前Python系统内相关的处理不同:
1、 首次导入会执行导入的模块文件,而导入后删除模块在此导入不会执行模块文件;
2、 使用《第10.2节 查看导入的Python模块》介绍的方法还是可以查看到模块名。
请看如下案例:
>>> import importtestNow in importtest module!>>> importtest.ftest()execute ftest function….>>> del importtest>>> importtest.ftest()Traceback (most recent call last): File \”\”, line 1, in importtest.ftest()NameError: name \’importtest\’ is not defined>>> import importtest #删除后倒入没有执行模块文件>>> importtest.ftest()execute ftest function….>>> import sys>>> for m in sys.modules:if str(sys.modules[m]).find(r\'(built-in)\’)==-1 and str(sys.modules[m]).find(r\’C:\\\\Program Files\\\\Python37\’)==-1 :print(\’模块名:\’,m,\’, 模块来源: \’,sys.modules[m])
执行结果如下:
模块名: _frozen_importlib , 模块来源: 模块名: _frozen_importlib_external , 模块来源: 模块名: importlib._bootstrap , 模块来源: 模块名: importlib._bootstrap_external , 模块来源: 模块名: pyexpat.errors , 模块来源: 模块名: pyexpat.model , 模块来源: 模块名: xml.parsers.expat.model , 模块来源: 模块名: xml.parsers.expat.errors , 模块来源: 模块名: importtest , 模块来源: >>>
执行截图:
本节简单介绍了是的能对导入模块进行逆向反导入,可以看到导入的模块可以删除但并不能真正反导入。每个模块只被导入一次,放入字典sys.module中,如果你改变了模块的内容,你必须重启程序,python不支持重新加载或卸载之前导入的模块。
老猿Python,跟老猿学Python!
博客地址:https://blog.csdn.net/LaoYuanPython
请大家多多支持,点赞、评论和加关注!谢谢!
《python导入模块语句,python导入模块的方式》来自互联网同行内容,若有侵权,请联系我们删除!
科技资讯SEO上一篇 : 如何有效与女主播在聊天室互动?
下一篇 : 如何在新浪秀场中快速找到心仪的房间?
-
SEO外包最佳选择国内专业的白帽SEO机构,熟知搜索算法,各行业企业站优化策略!
SEO公司
-
可定制SEO优化套餐基于整站优化与品牌搜索展现,定制个性化营销推广方案!
SEO套餐
-
SEO入门教程多年积累SEO实战案例,从新手到专家,从入门到精通,海量的SEO学习资料!
SEO教程
-
SEO项目资源高质量SEO项目资源,稀缺性外链,优质文案代写,老域名提权,云主机相关配置折扣!
SEO资源
-
SEO快速建站快速搭建符合搜索引擎友好的企业网站,协助备案,域名选择,服务器配置等相关服务!
SEO建站
-
快速搜索引擎优化建议没有任何SEO机构,可以承诺搜索引擎排名的具体位置,如果有,那么请您多注意!专业的SEO机构,一般情况下只能确保目标关键词进入到首页或者前几页,如果您有相关问题,欢迎咨询!