Python模块重载失效求助:修改cli-chess源码后无响应
解决cli-chess源码修改不生效问题
问题根源
你运行python3 .../__main__.py时,Python优先加载了全局环境中已安装的cli-chess模块,而非本地克隆的项目源码。这就是为什么删改本地其他文件程序仍能运行、修改源码无效果的原因。
解决方案
卸载全局安装的cli-chess
先检查全局是否安装了该模块:pip3 list | grep cli-chess如果有输出,执行卸载命令:
pip3 uninstall -y cli-chess运行本地源码模块
进入克隆的cli-chess项目根目录(即包含cli_chess文件夹的目录),执行以下命令运行程序:python3 -m cli_chess该命令会强制Python优先加载当前目录下的
cli_chess模块,而非全局模块。验证修改效果
修改任意源码文件(比如cli_chess/core/main.py)后,重新执行上述运行命令,即可看到变更生效。
补充说明
- 你尝试的
importlib.reload无效,是因为初始加载的是全局模块,重载的对象并非本地修改的版本。 %reload_ext autoreload是Jupyter Notebook专属的魔法命令,不能直接写入.py文件执行,因此会报语法错误。
内容的提问来源于stack exchange,提问作者Ian
相关产品推荐
相关产品推荐

