Python 重新加载模块

每个Python文件中的import modulename只被加载一遍,如果在运行过程中,这个Module被更改了,即使在在interpretor中运行import 语句也没用。

可以使用importlib中的reload函数

import importlib
importlib.reload(modulename)

原文地址:https://www.cnblogs.com/heenhui2016/p/11372353.html

时间: 2024-10-26 16:00:33

Python 重新加载模块的相关文章

Python动态加载模块

需求:实现一个简单的pyton程序,接收两个参数:plugin_name, data,根据不同的plugin_name定位到不同的逻辑处理模块并进行输出. 实现方案: 使用python的库函数:load_source,将插件模块加载到一个dict中key为模块名称,value为类的实例,核心代码: def load_plugins(): global plugin_dict # 遍历插件目录加载所有py结尾的模块 for root, dirs, files in os.walk(module_p

python如何重新加载模块

Python如何重新加载模块?Python教程(http://www.maiziedu.com/course/python/)中重新加载模块的方法有哪些呢?在python开发中,我们为了防止两个模块互相导入的问题,Python默认所有的模块都只导入一次,可以在开发时,我们会需要重新导入模块,那么怎么办呢,下面一起看看python重新加载模块的几种方法吧: Python2.7可以直接用reload(),Python3可以用下面几种方法: 方法一:基本方法 from imp import reloa

Python自动重新加载模块(autoreload module)

守护进程模式 使用python开发后台服务程序的时候,每次修改代码之后都需要重启服务才能生效比较麻烦.看了一下Python开源的Web框架(Django.Flask等)都有自己的自动加载模块功能(autoreload.py),都是通过subprocess模式创建子进程,主进程作为守护进程,子进程中一个线程负责检测文件是否发生变化,如果发生变化则退出,主进程检查子进程的退出码(exist code)如果与约定的退出码一致,则重新启动一个子进程继续工作. 自动重新加载模块代码如下: #!/usr/b

python 在初始化运行环境时所有预加载模块

python 在初始化运行环境时,会预加载一批内建模块到内存. 所有预加载模块如下: 1 >>> for item in sys.modules.items(): 2 ... print item 3 ... 4 ('copy_reg', <module 'copy_reg' from '/Users/Kris/git_space/pyv/lib/python2.7/copy_reg.pyc'>) 5 ('encodings', <module 'encodings'

nginx php动态编译加载模块.

#Nginx动态编译加载模块步骤 #查看目前Nginx版本及编译模块 #[[email protected] ~]# /opt/app/lnmp/nginx-1.12.0/sbin/nginx -V #nginx version: nginx/1.12.0 #built by gcc 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) #built with OpenSSL 1.0.2k  26 Jan 2017 #TLS SNI support enabled #c

AngularJs 动态加载模块和依赖注入

最近项目比较忙额,白天要上班,晚上回来还需要做Angular知识点的ppt给同事,毕竟年底要辞职了,项目的后续开发还是需要有人接手的,所以就占用了晚上学习的时间.本来一直不打算写这些第三方的学习笔记,不过觉得按需加载模块并且成功使用这个确实是个好处,还是记录下来吧.基于本兽没怎么深入的使用requireJs,所以本兽不知道这个和requireJs有什么区别,也不能清晰的说明这到底算不算Angular的按需加载. 为了实现这篇学习笔记知识点的效果,我们需要用到: angular:https://g

第四十天:编译可加载模块

linux刚刚开始的时候仅仅支持intel 386 ,后来不断的被移植到越来越多的平台上,包括ARM ,POWERPC,所有的代码设备驱动代码都编译到内核中,这明显不现实,这时候就需要通过内核模块的形式来加载驱动.当然模块不一定是驱动,也可以是为驱动提供某种功能. 现在先编写一个简单的linux模块. 1 #include <linux/init.h> 2 #include <linux/module.h> 3 4 MODULE_LICENSE("GPL");

Unity加载模块深度解析(网格篇)

在上一篇 加载模块深度解析(一)中,我们重点讨论了纹理资源的加载性能.这次,我们再来为你揭开其他主流资源的加载效率. 这是侑虎科技第53篇原创文章,欢迎转发分享,未经作者授权请勿转载.同时如果您有任何独到的见解或者发现也欢迎联系我们,一起探讨.(QQ群465082844) 资源加载性能测试代码 与上篇所提出的测试代码一样,我们对于其他资源的加载性能分析同样使用该测试代码.我们将每种资源均制作成一定大小的AssetBundle文件,并逐一通过以下代码在不同设备上进行加载,以期得到不同硬件设备上的资

AngularJS中多个ng-app(手动加载模块)

1.当有多个ng-app时:(首先是要加载angularJS) <div ng-app=""> <p>姓名:<input type="text" ng-model="name" placeholder="请输入姓名" /></p> <p> {{name}} </p> </div> <div ng-app="">