python - python:在函数内重新加载模块
问题描述
我在 python 中有一个配置文件,可以在主脚本运行时更改,所以我需要重新加载它。
我在这篇文章中尝试了答案: python refresh/reload
import config
from config import *
...
reload(config)
from config import *
它一直有效,直到我将重新加载部分输入到一个函数中,所以如果我这样做:
import config
from config import *
def main():
reload(config)
from config import *
我收到警告:“import *”只允许在模块级别,脚本正在运行但重新加载不起作用,
我也试过“import config”而不是“from config import *”,但我得到一个异常“UnboundLocalError:分配前引用的局部变量'config'”
解决方案
我建议您将配置存储在文件而不是模块中。请查看ConfigParser
Python 中的模块。据我所知,它也可以处理 ini 文件。